-
先执行父类属性初始化,再进行父类构造函数初始化,然后在进行子类属性初始化,最后是子类构造方法初始化查看全部
-
程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。由于静态初始化块只在类加载时执行一次,所以当再次创建对象 hello2 时并未执行静态初始化块。
查看全部 -
封装,就是修改属性的可见性
查看全部 -
package com.Shape;
public class Initail {
public static void main(String[] args) {
// TODO Auto-generated method stub
Shape rectangle = new rectangle();
Shape b = new circle();
double a1 = rectangle.perimeter();
double a2 = b.perimeter();
double b1 = rectangle.area();
double b2 = b.area();
System.out.println("矩形的周长为:"+a1+"面积为:"+b1);
System.out.println("圆形的周长为"+a2+"面积为:"+b2);
}
}package com.Shape;
public class circle extends Shape {
public int r=3;
@Override
public double perimeter() {
// TODO Auto-generated method stub
return 2*r*3.14;
}
@Override
public double area() {
// TODO Auto-generated method stub
return r*r*3.14;
}
}
package com.Shape;
public class rectangle extends Shape {
public int a=2;
public int b=1;
@Override
public double perimeter() {
// TODO Auto-generated method stub
return (a+b)*2;
}
@Override
public double area() {
// TODO Auto-generated method stub
return a*b;
}
}
package com.Shape;
public class Initail {
public static void main(String[] args) {
// TODO Auto-generated method stub
Shape rectangle = new rectangle();
Shape b = new circle();
double a1 = rectangle.perimeter();
double a2 = b.perimeter();
double b1 = rectangle.area();
double b2 = b.area();
System.out.println("矩形的周长为:"+a1+"面积为:"+b1);
System.out.println("圆形的周长为"+a2+"面积为:"+b2);
}
}查看全部 -
方法内部类就是内部类定义在外部类的方法中,方法内部类只在该方法的内部可见,即只在该方法内可以使用。
查看全部 -
引用类型转换:
1、向上类型转换(隐式/自动类型转换),是小类型到大类型的转换
2、向下类型转换(强制类型转换),是大类型到小类型
3、instanceof运算符,来解决引用对象的类型,避免类型转换的安全性问题
查看全部 -
对象的多态:
1、引用多态:继承是多态实现的基础
父类的引用可以指向本类的对象
父类的引用可以指向子类的对象
注意:不允许子类的引用指向父类的对象
2、方法多态:
创建本类对象,调用的方法为本类方法
创建子类对象时,调用的方法为子类重写的方法或者继承的方法
注意:不能通过父类的引用调用子类独有的方法
查看全部 -
问:内部类有几种呢?
答:内部类可分为以下几种:
成员内部类
静态内部类
方法内部类
匿名内部类
查看全部 -
111111
查看全部 -
继承问题、
为什么age的输出值不是500呢?既不是父类构造方法中的赋值。也不是子类构造方法中的赋值 而是 我刚开始定义时系统给的初始值
求解
查看全部 -
类对象;obj.getClass()
属性,方法...代码信息
类的对象:obj
属性值...数据信息
查看全部 -
super应用
查看全部 -
super关键字
查看全部 -
final关键字
查看全部 -
Object类是所有类的父类,如果一个类没有使用extends关键字明确标识继承另外一个类,那么这个类默认继承Object类。
Object类中的方法,适合所有子类。
1、toString()方法:
在Object类里面定义toString()方法的时候返回的对象的哈希code码(对象地址字符串)
可以通过重写toString()方法表示出对象的属性
查看全部
举报