new 类明(); 就是创建了一个对象,将对象赋给一个变量,变量是什么类型呢?就是类名那个类型。类就是对象的类型。浮点型变量默认是double类型的,需要在其后加f才能成为float类型。
2016-09-25
程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。由于静态初始化块只在类加载时执行一次,所以当再次创建对象 hello2 时并未执行静态初始化块
2016-09-25
静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。
2016-09-25
类,虚拟的东西看不到摸不着,实际不存在;对象,实实在在的东西,实际存在。对象有属性和方法,属性是对象有什么,方法是对象可以干什么。
2016-09-25
变量,常量,成员变量,局部变量,静态变量,非静态变量,静态方法,非静态方法,普通方法,父类,子类,外部类,内部类,隐藏内部类,外部类静态变量,外部类非静态变量,静态内部类,普通内部类,成员内部类,方法内部类,方法内部隐藏类,方法内部类就是内部类定义在外部类的方法中,方法内部类不能除外部类方法调用,静态方法可以直接调用静态变量,静态方法不可以直接调用非静态变量,如果静态方法要调用非静态变量先创立个对象通过静态方法访问非静态变量.外部类不能直接使用内部类成员变量和内部类方法,需要通过创建外部类对象然后创建内部类对象来访问内部类变量和内部类方法,
老师: 你看,是不是很简单.
我: ......
老师: 你看,是不是很简单.
我: ......
2016-09-25
package practice02;
public class Initial {
public static void write(transport obj){
obj.func();
}
public static void main(String[] args) {
// TODO Auto-generated method stub
write(new bike());
write(new bus());
}
}
public class Initial {
public static void write(transport obj){
obj.func();
}
public static void main(String[] args) {
// TODO Auto-generated method stub
write(new bike());
write(new bus());
}
}
2016-09-24
main方法:
Shape rect = new Rectangle(3, 4);
System.out.println("矩形的周长为" + rect.perimeter());
System.out.println("矩形的面积为" + rect.area());
Shape circ = new Circle(2);
System.out.println("圆的周长为" + circ.perimeter());
System.out.println("圆的面积为" + circ.area());
Shape rect = new Rectangle(3, 4);
System.out.println("矩形的周长为" + rect.perimeter());
System.out.println("矩形的面积为" + rect.area());
Shape circ = new Circle(2);
System.out.println("圆的周长为" + circ.perimeter());
System.out.println("圆的面积为" + circ.area());
2016-09-24
Circle子类代码:
package com.imooc;
public class Circle extends Shape {
final double PI = 3.14159;
double radius;
public Circle(double radius) {
this.radius = radius;
}
public double perimeter() {
return 2 * PI * radius;
}
public double area() {
return PI * radius * radius;
}
}
package com.imooc;
public class Circle extends Shape {
final double PI = 3.14159;
double radius;
public Circle(double radius) {
this.radius = radius;
}
public double perimeter() {
return 2 * PI * radius;
}
public double area() {
return PI * radius * radius;
}
}
2016-09-24
这章的什么Animal Dog的例子并没有真正体现多态的核心。讲白了,多态就是让在主函数里面只引用一个Aminal,对象就能输出所有的Animal子类。
2016-09-24
Rectangle子类代码:
public class Rectangle extends Shape {
double width;
double height;
public Rectangle(double width, double height) {
this.width = width;
this.height = height;
}
public double perimeter() {
return (width + height) * 2;
}
public double area() {
return width * height;
}
}
public class Rectangle extends Shape {
double width;
double height;
public Rectangle(double width, double height) {
this.width = width;
this.height = height;
}
public double perimeter() {
return (width + height) * 2;
}
public double area() {
return width * height;
}
}
2016-09-24