-
static变量也称作静态变量,静态变量和非静态变量的区别是:静态变量被所有的对象所共享,在内存中只有一个副本,它当且仅当在类初次加载时会被初始化。而非静态变量是对象所拥有的,在创建对象的时候被初始化,存在多个副本,各个对象拥有的副本互不影响
查看全部 -
内部类访问外部类的静态变量:类名.变量名
静态内部类可以直接创建对象,不需要借助外部类对象,这点不同于普通类
查看全部 -
内部类访问外部类成员或方法时
外部类名.this.成员或方法
先创建外部类对象,再用外部对象.new创建内部类对象,调用内部类方法
查看全部 -
通过构造方法初始化变量
1.6-java构造方法
1.构造方法就是与类名相同的方法,且没有返回值,形参可有可无。
2.类中没有构造方法,也可以直接实例化。
3.有参的构造方法,就是在实例化的时候初始化属性值(成员变量赋值)。
4.有参的构造方法,和无参的构造方法可同时存在。构造方法重载的特性。
5.当一个有参的构造方法存在时,系统不会自动生成一个无参的构造方法。
查看全部 -
程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。由于静态初始化块只在类加载时执行一次,所以当再次创建对象 hello2 时并未执行静态初始化块。
查看全部 -
創建項目&類
查看全部 -
float賦值
查看全部 -
package com.imooc;
public class InitailTelphone {
public static void main(String[] args) {
// TODO Auto-generated method stub
//通过无参的构造方法可以创建对象
//Telphone phone=new Telphone();
//通过有参的构造方法也可以创建对象,并给对象中的实际变量赋值
Telphone phone2=new Telphone(1.5f,1.4f,2.0f);
}}
查看全部 -
package com.imooc;
public class Telphone {
float screen;
float cpu;
float mem;
public Telphone() {
System.out.println("无参的构造方法执行了!");
}
public Telphone(float newScreen,float newCpu,float newMem) {
if(newScreen<3.5f) {
System.out.println("您输入的参数有问题,自动赋值3.5");
screen=3.5f;
}else {
screen=newScreen;
};
cpu=newCpu;
mem=newMem;
System.out.println("有参的构造方法执行了!");
}
}查看全部 -
super.父类对象
super.父类方法
查看全部 -
本节重点:
(1)Java 中可以通过初始化块进行数据赋值。
(2)如果使用 static 修饰初始化块,就称为静态初始化块。
(3)静态初始化块只在类加载时执行(类加载时会完成静态数据成员的初始化类似静态初始化),且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。
(4)程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。
查看全部 -
本节重点:
(1)与静态变量一样,我们也可以使用 static 修饰方法,称为静态方法或类方法。
(2)可以使用类名直接调用静态方法。
(3) 静态方法中可以【直接】调用【同类】中的静态成员,但不能直接调用非静态成员。
(4)如果希望在静态方法中调用非静态变量,可以通过创建类的对象,然后通过对象来访问非静态变量。
(5) 在【普通】成员方法中,则可以【直接】访问同类的非静态变量和静态变量。
(6)静态方法中不能直接调用非静态方法,需要通过对象来访问非静态方法。
感悟:注意方法调用方法,方法调用成员,静态与否的不同规则。
查看全部 -
本节重点:
(1)java 中被 static 修饰的成员称为静态成员或类成员。它属于整个类所有,而不是某个对象所有,即被类的所有对象所共享。
(2)静态成员可以使用类名直接访问,也可以使用对象名进行访问。当然,鉴于他作用的特殊性更推荐用类名访问~~
(3)使用 static 可以修饰变量、方法和代码块
查看全部 -
成员变量和局部变量的区别:
作用域不同:局部变量的作用域仅限于定义它的方法,成员变量的作用域在整个类内部都是可见的
初始值不同:java会给成员变量一个初始值;不会给局部变量赋予初始值
在同一个方法中,不允许有同名局部变量;在不同的方法中,可以有同名局部变量
两类变量同名时,局部变量具有更高级的优先级
查看全部 -
Java 中的方法内部类
方法内部类就是内部类定义在外部类的方法中,方法内部类只在该方法的内部可见,即只在该方法内可以使用
由于方法内部类不能在外部类的方法以外的地方使用,因此方法内部类不能使用访问控制符和 static 修饰符。
查看全部
举报