对象构造和初始化
来源:互联网 发布:微博怎么设置个性域名 编辑:程序博客网 时间:2024/05/24 15:36
(1)构造方法
对象都有构造方法,如果没有,则添加一个default方法
抽象类有构造方法
(2)调用本类和父类
this 本类其他
super父类
父类所有构造方法都得到调用
例:
class A{ A(int a){}}class B extends A{ B(String s){} //不能通过编译}
1.class A{ A(){} A(int a){}}2.class A{}3.class B extends A{ super(3); B(String s){}}
(3)创建对象时初始化
p = new Person(){{age = 18; name = ' '}}
(4)构造方法执行过程
先父类构造,再本类赋值,最后执行构造方法中的语句
public class MyDate { public static void main(String[] args){ Person p = new Student("B", 18, "Q"); }}class Person{ String name="A"; //step 2 int age=-1; Person(String name, int age) { super(); //step 1 //step 3 System.out.println( "this.name="+this.name+",this.age="+this.age ); this.name=name; this.age=age; System.out.println( "Person() this.name="+this.name+",this.age="+this.age ); }}class Student extends Person{ String school="PKU"; //step2 Student( String name, int age, String school ) { super( name, age ); //step 1 //step 3 System.out.println( "this.name="+this.name+",this.age="+this.age+",this.school="+this.school ); this.school = school; System.out.println( "Student() this.name="+this.name+",this.age="+this.age+",this.school="+this.school ); }}结果:this.name=A,this.age=-1Person() this.name=B,this.age=18this.name=B,this.age=18,this.school=PKUStudent() this.name=B,this.age=18,this.school=Q
阅读全文
0 0
- 对象构造和初始化
- 对象的构造和初始化
- Java--对象构造和初始化
- 对象的构造和初始化过程
- 面向对象--初始化块 和构造器
- c++对象、构造函数和初始化列表
- 对象构造与初始化
- 对象构造与初始化
- static 变量和static 构造函数 以及对象初始化顺序
- java对象初始化时的静态块和构造块
- 构造函数初始化类对象
- C++ 对象构造, 初始化, 赋值
- 构造方法实现对象初始化
- 利用构造函数初始化对象
- Java- 对象构造与初始化
- 二段构造模式 初始化对象
- 《深度探索C++对象模型》笔记(三)构造函数、拷贝构造和初始化列表
- C++ 构造函数、默认构造函数、析构函数和对象初始化
- 多媒体编辑模块架构设计
- HDU5655
- 达内课程-高级流/操作流BufferedOutputStream/BufferedInputStream
- leetcode013-Maximal Square(dp)
- Django的国际化
- 对象构造和初始化
- hexo yilia主题添加文章访问量统计
- intellij tab键改为4个空格
- Java【集合系列】-08-List总结(LinkedList, ArrayList等使用场景和性能分析)
- 【计算机视觉】分辨率与超分辨率图像重建
- bzoj十一月份月赛 Problem A: 组题
- redis cluster的安装
- Java基础之Scanner,Random类的对象
- 公告(注意!!!)