java子类实例化过程
2014-02-24 11:41
399 查看
class Person{
String name;
int age;
/*
以上两个为成员变量
*/
Person(){
System.out.println("Person的无参数构造函数");
}
Person(String name,int age){
this.name = name;
this.age= age;
//System.out.println("my name is " + name + " \n my age is " + age );
}
//以上两个Person为构造函数
void eat(){
System.out.println("吃饭");
}
//void为成员函数
}
----
/* extend只能继承成员变量和成员函数而不能继承Persong中的构造函数
在子类中必须调用父类中的构造函数,如果不调用则系统自行辅助调用
即直接加上一句话
super进行调用 ---super 如果调用不为空的构造函数则super()不执行
如果想调用父类中其他的任意函数,那么就在super()括号中写上需要调用的参数即可
*/
class Student extends Person{
int grade;
//在子类的构造函数中,必须 调用父类的构造函数 为什么????
Student(){
//super();
System.out.println("Student的无参数构造函数");
}
Student(String name , int age , int grade){
//this.name = name;
//this.age = age;
super(name,age);
this.grade = grade;
System.out.println("my name is " + name + " \n my age is " + age + " my grade is " + grade);
}
}
--------
class Test{
public static void main (String args []){
Student student = new Student("张三",18,3);
System.out.println(student.name);
System.out.println(student.age);
System.out.println(student.grade);
/*生成Student这个类的对象,
首先我们使用new这个关键字调用Student这个构造函数
当我们使用new这个关键字来调用student这个构造函数时候,
有一个东西会帮我们先调用Person这个函数的无参数构造函数
然后在执行Student student = new Student();
*/
}
}
String name;
int age;
/*
以上两个为成员变量
*/
Person(){
System.out.println("Person的无参数构造函数");
}
Person(String name,int age){
this.name = name;
this.age= age;
//System.out.println("my name is " + name + " \n my age is " + age );
}
//以上两个Person为构造函数
void eat(){
System.out.println("吃饭");
}
//void为成员函数
}
----
/* extend只能继承成员变量和成员函数而不能继承Persong中的构造函数
在子类中必须调用父类中的构造函数,如果不调用则系统自行辅助调用
即直接加上一句话
super进行调用 ---super 如果调用不为空的构造函数则super()不执行
如果想调用父类中其他的任意函数,那么就在super()括号中写上需要调用的参数即可
*/
class Student extends Person{
int grade;
//在子类的构造函数中,必须 调用父类的构造函数 为什么????
Student(){
//super();
System.out.println("Student的无参数构造函数");
}
Student(String name , int age , int grade){
//this.name = name;
//this.age = age;
super(name,age);
this.grade = grade;
System.out.println("my name is " + name + " \n my age is " + age + " my grade is " + grade);
}
}
--------
class Test{
public static void main (String args []){
Student student = new Student("张三",18,3);
System.out.println(student.name);
System.out.println(student.age);
System.out.println(student.grade);
/*生成Student这个类的对象,
首先我们使用new这个关键字调用Student这个构造函数
当我们使用new这个关键字来调用student这个构造函数时候,
有一个东西会帮我们先调用Person这个函数的无参数构造函数
然后在执行Student student = new Student();
*/
}
}
相关文章推荐
- Java子类实例化的过程
- 18天Java学习---13.面向对象编程08-Java中继承的概念,子类实例化过程,super()及方法复写
- java学习之路 之 高级类特性-四种权限修饰符、关键字super、子类对象的实例化过程
- JAVA基础知识再学习(3)继承概论 & 子类实例化过程
- Java子类实例化的过程
- Java继承--子类的实例化过程
- JAVA子父类中构造函数的特点-子类实例化过程
- JAVA基础-子类继承父类实例化对象过程
- java面向对象——继承最终章--子类的实例化过程(内存)
- Java子类对象的实例化过程
- JAVA基础-子类继承父类实例化对象过程
- 再学 JAVA基础(5)对象转型,多态。【子类对象的实例化过程】
- java19子类实例化过程
- JAVA学习--子类对象实例化的全过程
- JAVA学习--子类对象实例化的全过程
- Java 对象实例化过程以及子类…
- Java学习笔记---13.面向对象编程08-Java中继承的概念,子类实例化过程,super()及方法复写
- JAVA中子类对象的实例化过程
- Java重修之路(八)面向对象之继承,子父类中变量、函数、构造函数的特点,子类实例化过程。
- Java基础学习17(子类对象实例化的全过程图解,内存分配)