摘要: 一、static静态修饰符 static修饰符能够修饰属性,方法,初始代码块,不能修饰局部变量和类。 静态的变量叫常量,非静态的变量叫实例变量。 1、修饰属性 运行结果: name:张三addr:湖北武汉name:李四addr:湖北武汉 通过上面的运行结果可以看出,Info在第一次被实例化之后,修改 阅读全文
posted @ 2018-08-30 15:32 persistence_gc 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 1、当成员变量和局部变量重名时,在方法中使用this时,this指向的是该方法所在类的成员变量。 运行结果: name:李四this.name:张三user.name:李四 通过上的运行结果可以看出,在show方法中,对name操作,指向的是show的参数,要对该类中的成员变量操作,需要带上this 阅读全文
posted @ 2018-08-30 14:38 persistence_gc 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 一、内部类 内部类是指定义在另外一个类里面的类,这叫做内部类,就是在类里面定义类,内部类又分为成员内部类和局部内部类。 1、成员内部类 成员内部类是指定义在外部类的成员位置。 运行结果: 张三男湖北武汉20 通过上面运行结果可以看出,成员内部类可以直接访问外部内的成员,即使是私有成员也可以访问。 下 阅读全文
posted @ 2018-08-30 14:16 persistence_gc 阅读(219) 评论(0) 推荐(0) 编辑
摘要: 一、静态变量和实例变量的区别 1、静态变量 由static修饰,在jvm中,静态变量加载顺序在对象之前,所以静态变量不依赖对象的存在,可以不实例化对象的情况下使用类的静态变量。 通过上面的代码可以看出,静态变量可以在未实例化对象的时候使用,但是非静态变量只能在实例化对象时候才能使用。 运行结果为: 阅读全文
posted @ 2018-08-29 17:58 persistence_gc 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 常量和变量命名,不建议使用中文,在不同的平台会出现乱码。 1、常量 常量是一种特殊的变量,它的值被设定后,在程序运行过程中不允许改变,用final修饰,一般用大写字符。 语法:final 常量名 = 值; 可以看出,编译器报错,常量是不能被赋值的,但是可以赋值给别的变量。 2、变量 变量命名的规则: 阅读全文
posted @ 2018-08-29 17:13 persistence_gc 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 下面我定义了三个public、protected、private这三个级别的变量和不带修饰符的变量,其中defaule关键字不需要带上,defaule带上后编译器会报错,在不同的类和不同的包中测试 可以看出,在同一个类中,是都可以访问的,带上default修饰符会报错 通过上面的代码可以看出在Bas 阅读全文
posted @ 2018-08-29 16:04 persistence_gc 阅读(139) 评论(0) 推荐(0) 编辑
摘要: super可以理解为是指向自己超(父)类对象的一个指针,而这个超类指的是离自己最近的一个父类。 class BaseAction { 运行结果: 张三20 class BaseAction { 运行结果: 李四21 class BaseAction { 运行结果: 李四0 总结:super.valu 阅读全文
posted @ 2018-08-29 14:44 persistence_gc 阅读(187) 评论(0) 推荐(0) 编辑
摘要: class Main{ 运行结果: 父类,无参构造方法子类,无参构造方法 class Main{ 运行结果: 父类,无参构造方法子类,含一个参数的构造方法张三 class Main{ 运行结果: 父类,无参构造方法 class Main{ 运行结果: 父类,含一个参数的构造方法张三 总结:在实例化对 阅读全文
posted @ 2018-08-29 14:42 persistence_gc 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 不可重写私有方法。 不可重写非静态的方法,虽然编译器不会报错,但是得不到预期的结果。 可以通过重写的形式对父类的功能进行重新定义,比如:对功能进行修改或者进行升级时。 class BaseAction { 运行结果: BaseAction.showMsgBaseAction.getName:张三 现 阅读全文
posted @ 2018-08-29 14:41 persistence_gc 阅读(227) 评论(0) 推荐(0) 编辑
摘要: final可以修饰类、方法、变量。 final修饰类不可以被继承,但是可以继承其他类。 final修饰的方法不可以被覆盖,但可以覆盖父类方法。 final修饰的变量包括局部变量、成员变量、类变量,变量在声明的时候必须赋值,后面不可给final修饰的变量重新赋值。 通常规范中,被final修饰的变量是 阅读全文
posted @ 2018-08-29 14:40 persistence_gc 阅读(132) 评论(0) 推荐(0) 编辑