随笔分类 - java基础
day38(增强类的实现)
摘要:定义一个接口 定义一个类实现该接口 增强类的实现(三种方式) 1.继承 必须要能控制这个(增强类)类的构造方法; 需要增强Student类(在吃饭前需要洗手) 测试: 输出结果: 2.装饰者设计模式 前提: a.增强类和被增强类不许实现相同的接口; b.在增强类中获得被增强类的引用; 缺点: 接口中
阅读全文
day37(类加载器)
摘要:类的加载器:将class文件加载到JVM中执行这个文件. Java中将类加载器分成三类: 引导类加载器: JAVA_HOME/jre/lib/rt.jar | 扩展类加载器: JAVA_HOME/jre/lib/ext/*.jar | 应用类加载器: 加载类路径下的所有的class. 这些类加载器如
阅读全文
day27(反射之内省机制)
摘要:内省 内省:底层是使用反射机制实现的,是对于反射的进一步封装。 反射:通过类名来获取类中的所有属性和方法及类中的所有隐藏的方法。 内省:通过一个标准类(javabean类)来获取bean中的字段、get/set方法。 创建一个Student标准类 测试类
阅读全文
String 简介
摘要:特性: 1.字符串的不可改变性 String s="a"+"b"+"c"; 创建了四个对象 在方法常量池中存储 a“,”b“,”c“,三个对象 最后会吧三个拼接到一起在创建一个对象 存储"abc"的对象,a,b,c的对象会被gc在空闲地时候回收 体现了字符穿的不可改变型 2.字符串的底层代码还是字符
阅读全文
对于java的命名规范(标识符)
摘要:java的命名规范基本都需要使用标识符来命名的; 标识符的介绍: 标识符作用: 给变量起名字的用的。 标识符的组成: 1.Unicode编码:包含大、小写字母,数字,汉字(不建议使用)。 2.美元符:$ 3.下划线:_ 注意事项: 不能以数字开头; 一般的命名规范: 包: 一级包:全部小写 多级包:
阅读全文
环境变量的配置
摘要:为什么要配置 – 程序的编译和执行需要使用到javac和java命令,所以只能在bin目录下写程序 – 实际开发中,不可能把程序写到bin目录下,所以我们必须让javac和java命令在任意目录下能够访问 如何配置 – 创建新的变量名称:JAVA_HOME 计算机-右键属性-高级系统设置-高级-环境
阅读全文
栈和堆
摘要:栈 a.存储值 存储对象的地址 b.由系统自动分配 c.响应:如果栈的剩余空间大于所申请的空间,系统将为程序员提供内存,否则会报内存溢出。 堆 a.存储对象内容 在堆中分配的内存,由Java虚拟机的自动垃圾回收器来管理。 b.需要自动申请并确定大小 c. 首先应该知道操作系统有一个记录空闲内存地址的
阅读全文
浅谈反射
摘要:1:反射(理解) (1)类的加载及类加载器 (2)反射: 通过字节码文件对象,去使用成员变量,构造方法,成员方法 (3)反射的使用 A:通过反射获取构造方法并使用 package com.itheima.test; public class Person { private String name;
阅读全文
其他流
摘要:一:标准输入输出流 (1)System类下面有这样的两个字段 in 标准输入流 out 标准输出流 (2)三种键盘录入方式 A:main方法的args接收参数 B:System.in通过BufferedReader进行包装 BufferedReader br = new BufferedReader
阅读全文
I/O 流---输出流
摘要:输出流(写入数据) a. 字节输出流 OutputStram 输出流的父类 FileOutputStream: 继承OutputStream 方法: OutputStream os=new FileOutputStream("dos.txt"); os.write("asdf".getBytes()
阅读全文
java I/O流
摘要:输入流(读取数据的流) BufferedInputStream 继承 >FileInputStream--继承 >InputStream > (1)字节流操作中文数据不是特别的方便,所以就出现了转换流。 转换流的作用就是把字节流转换字符流来使用。 (2)转换流其实是一个字符流 字符流 = 字节流 +
阅读全文
Map集合
摘要:1:Map (1)将键映射到值的对象。 一个映射不能包含重复的键;每个键最多只能映射到一个值。 键值对的方式存在 (2)Map和Collection的区别? A:Map 存储的是键值对形式的元素,键唯一,值可以重复。夫妻对 B:Collection 存储的是单独出现的元素,子接口Set元素唯一,子接
阅读全文
深入Collection集合
摘要:List集合 一.ArraryList: 最基本的集合不多做介绍 二.Vector Vector cn=new Vector(); A:有特有功能 a:添加 public void addElement(E obj) -- add() cn.addElement(object e); b:获取 pu
阅读全文
浅谈Collection集合
摘要:俗话说:一个东西,一件事都离不开三句话:“是什么,为什么,怎么办” 集合是什么: 集合简单的说一个数组集合的高级体现,用来存储数据或对象的容器; 集合为什么存在: 集合只是体现了对数据操作的灵活度;大大方便了开发者的效率; 集合怎么使用: 使用分了以下几种方式: Collection 集合 1.li
阅读全文
时间数据类型转换
摘要:A:时间类型 字符串类型 //创建SimpleDateFormat对象 SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //创建日期对象 Date currentTime = new Date();
阅读全文
随机数(random)
摘要:需求 Random rd=new Random(); 需要十以内的随机数 (0———10) System.out.println((int)((rd.nextDouble()*100)/10)); System.out.println(rd.nextInt(10)); 需要5-10之间的数(包括5和
阅读全文
正则表达式
摘要:1:正则表达式 (1)就是符合一定规则的字符串 (2)常见规则 A:字符 x 字符 x。举例:'a'表示字符a \\ 反斜线字符。 \n 新行(换行)符 ('\u000A') \r 回车符 ('\u000D') B:字符类 [abc] a、b 或 c(简单类) [^abc] 任何字符,除了 a、b
阅读全文
String类
摘要:字符串的功能 A:判断功能 boolean equals(Object obj)//比较对象 boolean equalsIgnoreCase(String str)//忽略大小写 boolean contains(String str)//是否包含 boolean startsWith(Strin
阅读全文
创建对象做的什么事
摘要:Object o=new Object(); 创建对象做了如下几件事: 1.在栈的内存中开辟了一块空间来存储创建的对象; 2.对该对象进行初始化(隐式初始化,显示初始化) 3.调取构造方法(有参或无参)进行构造初始化。 4.在栈中开辟空间来存储变量; 5.让该变量指向刚创建的对象的地址值
阅读全文
jvm的内存分配
摘要:java内存分配 A:栈 存储局部变量 B:堆 存储所有new出来的 C:方法区(方法区的内存中) 类加载时 方法信息保存在一块称为方法区的内存中, 并不随你创建对象而随对象保存于堆中; D:本地方法区(系统相关) E:寄存器(CPU使用) 注意: a:局部变量 在方法定义中或者方法声明上定义的变量
阅读全文

浙公网安备 33010602011771号