java(基础函数及基本数据类型):
java基本函数与方法:
java重载与重写:
重载:在一个类里面,方法名字相同,而参数不同。返回类型可以相同也可以不同。
每个重载的方法(或者构造函数)都必须有一个独一无二的参数类型列表。
最常用的地方就是构造器的重载。
重写:子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。
重载例子:
重载结果:
重写例子:
重写结果:
构造函数:
主要为对象成员变量赋初始值。
与new运算符一起使用,不能直接被调用。
特别的一个类可以有多个构造函数
包装类:
Java中的基本数据类型没有方法和属性,而包装类就是为了让这些拥有方法和属性,实现对象化交互。
数值型包装类都继承至Number,而字符型和布尔型继承至Object。
基本的数据类型:数据型(整数类型(byte、short、int、long)、浮点类型(float、double))、字符类型(char)、布尔型(boolean)
int的基本类型默认值为0
integer是int的包装类。
装箱:基本数据类型转换为包装类;
拆箱:包装类转换为基本数据类型。
通过包装类Integer.toString()将整型转换为字符串;
通过Integer.parseInt()将字符串转换为int类型;
通过valueOf()方法把字符串转换为包装类然后通过自动拆箱。
包装类对象的初始值为null(是一个对象);
包装类对象之间的比较:
类的实例过程:
类的实例化:实例化在堆内开辟一片空间存储当前类的对象,new一个对象是实例化的一种方式。
实例对象
new,就是对类的实例化,创建这个类对应的实际对象,类只是对事物的描述,而实例化就相当于为这个描述新开辟了一块内存,可以改变这块区域里的各种属性(成员变量),当然,也可以实例化多块区域,只是不同的对象而已。s
例如
Date date=new Date();
反射实现实例对象:
不使用new关键字
使用newInstance()方法来创建对象
1、使用.properties配置文件创建对象
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-42GHeFZx-1600612852137)(C:\Users\hp\AppData\Roaming\Typora\typora-user-images\1600584020938.png)]
2、新建一个文件夹rescources,在里面创建文件phone.properties
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7E51YruE-1600612852138)(C:\Users\hp\AppData\Roaming\Typora\typora-user-images\1600584077701.png)]
3、myphone是后面getString()方法中需要用到的key,后面是test.Phone是类的实际路径
public class Test {
public static void main(String[] args) throws IOException, ClassNotFoundException, IllegalAccessException, InstantiationException {
String name = ResourceBundle.getBundle("phone").getString("myphone");
Phone phone = (Phone) Class.forName(name).newInstance();
System.out.println(phone);
}
输出结果:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9pTJfFEB-1600612852139)(C:\Users\hp\AppData\Roaming\Typora\typora-user-images\1600584154071.png)]
空指针异常报错:
是空对象调用方法。
如果没有调用是直接打印null。