面向对象
类:
类是模子,确定对象将会拥有的特征(属性)和行为(方法);
类的特点:
类是对象的类型;
具有相同属性和方法的一组对象的集合;
属性:
对象具有的各种特征;
每个对象的每个属性都拥有特定值;
方法:
对象执行的操作;
类与对象的关系:
类是抽象的概念,仅仅是模板,对象是一个你能看的见,摸的着的具体实体;
类的重要性:
所有的java程序都以类class为组织单元
定一个类的步骤:
1.定义类名;
2.编写类的属性;
3.编写类的方法;
例:
public class Telphone {
float scree;
float cpt;
float mem;
void call() {
System.out.println("这部手机有打电话功能");
}
void sendMessage() {
System.out.println("这部手机有发短信功能");
}
}
创建对象:
类名 对象名=new 类名();
使用对象:
引用对象的属性:对象名.属性
引用对象的方法:对象名.方法()
成员变量:
在类中定义,用来描述对象将要有什么
成员变量的作用域在整个类中都可以使用的
局部变量:
在类的方法中定义,在方法中临时保存数据
局部变量的作用域仅限用于定义它的方法中
Java不会给局部变量赋一个初始值;
在一个方法中,不允许有同名的局部变量;
注意:
两类变量同名时,局部变量具有更高的优先级;
优先调用局部变量的值;
构造方法:
语法格式:
public 构造方法名(可有参,可无参){
//初始化代码
}
1.使用new+构造方法 创建一个新的对象
2.构造方法是一个定义在java类中的一个用来初始化对象的方法
构造方法与类同名切,没有返回值;
3.无参的构造方法
public Test(){
System.out.println("无参的构造方法"); //加这句话是为了证明 初始化对象用到了构造方法
}
4.有参的构造方法:
public Test(int a , int b, int c){
System.out.println("无参的构造方法"); //加这句话是为了证明 初始化对象用到了构造方法
}
5.当没有指定的构造方法时,系统会自动添加无参的构造方法;
6.当有指定构造方法时,无论是有参,无参的构造方法,系统都不会再添加无参的构造方法;
7.构造方法的重载:
方法名相同,方法参数不同的多个方法,调用时会自动根据不同的参数,选择相应的方法;
8.构造方法不但可以给对象的属性赋值,还可以保证给对象的属性赋一个合理的值;
public Test(int a,int b,int c){
if(a<5){
System.out.println("您输入的值有误,以自动调整");
a=5;
}
}
static 使用之静态变量
Java 中被 static 修饰的成员称为静态成员或类成员。它属于整个类所有,而不是某个对象所有,即被类的所有对象所共享。静态成员可以使用类名直接访问,也可以使用对象名进行访问。当然,鉴于他作用的特殊性更推荐用类名访问
public 修饰符表示公开的公有的
public static int a=100; //定义公有的静态变量a
static 使用之静态方法
注意:1、静态方法中可以直接调用同类中的静态成员,但不能直接调用非静态成员
2、在普通成员方法中,则可以直接访问同类的非静态变量和静态变量
3、静态方法中不能直接调用非静态方法,需要通过对象来访问非静态方法。
static 使用之静态初始化块
java中可以通过初始化块进行数据赋值;
在类的声明中,可以包含多个初始化块,当创建类的实例时,就会依次执行这些代码块。如果使用 static 修饰初始化块,就称为静态初始化块。注意:态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。
运行结果:通过输出结果,我们可以看到,程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。由于静态初始化块只在类加载时执行一次,所以当再次创建对象 hello2 时并未执行静态初始化块。
第七章结束,练,不停的练,其他都扯淡蛋,感谢慕课网
网友评论