封装 构造方法(构造器) static关键字

  

封装概述

隐藏对象的属性实现细节,仅对外提供公共public访问方式

 

封装好处

隐藏实现细节,提供公共的访问方式

提高了代码的复用性安全性

 

封装原则

封装原则将不需要对外提供的内容都隐藏起来。

属性隐藏,提供公共方法对其访问。

 

private(私有)关键字特点

是一个权限修饰符

可以修饰成员变量成员方法

被其修饰的成员只能在本类中被访问

 当成员变量用private修饰表示外界不能访问

 

this关键字的概述和应用

 

this关键字特点

代表当前对象的引用

this的应用场景

用来区分成员变量和局部变量重名

 

this和外面调用的变量是指向同一地址的,指的是同一个对象好好理解】

 

 

public class HelloWorld {
    public static void main(String []args) {
		Person p = new Person();
		p.name = "sda";
		// p.age = 78;     报错 ,私有变量
		p.setAge(78);
		p.speak();
       System.out.println("Hello World!");
    }
}



class Person{
	String name;
	private int age;
	public void speak(){
		System.out.println("姓名" + name +"  " + age);
	}
	pubilc void setAge(int age){
		this.age = age;
	}
}

this和外面调用的变量是指向同一地址的,指的是同一个对象

this 指向的对象即为 p指向的对象(上图代码)

 

构造器方法Constructor概述

 

 构造器作用:给对象的数据(属性)进行初始化赋值

构造器格式特点:

1.方法名与类名相同(大小也要与类名一致)

2.没有返回值类型,连void都没有

3.没有具体的返回值return

构方法分为有参构造和无参构造两种

 构造方法的重载:

1是指方法名相同,与返回值类型无关(构造方法没有返回值),只看参数列表

案例:使用Person类演示, 如下

class Test {
    public static void main(String []args) {
		Person p = new Person();
		Person q = new Person("马云");
		p.setAge(78);
		p.speak();           //姓名小明  78
       	q.speak();          //姓名马云  0
    }
}

class Person{
	String name;
	private int age;
	public Person(){         //无参数构造方法
		name = "小明";       
	}
	public Person(String name){
		this.name = name;
	}
	public void speak(){
		System.out.println("姓名" + name +"  " + age);
	}
	public void setAge(int age){
		this.age = age;
	}
}

 

 构造方法注意事项

1.如果我们没有给出构造方法,系统将自动提供一个无参构造方法。

2.如果我们给出了构造方法,系统将不再提供默认的无参构造方法。

3.如果我们声明的有参的构造方法,这个时候,如果我们还想使用无参构造方法,就必须自己给出建议永远自己给出无参构造方法

4.正确构造方法的书写格式 【public  类名( ) 】

 

成员变量(属性)赋值的三种方式

直接给属性赋值【这种开发中比较少用】

通过setXxx()方法给属性赋值【开发中常用,一般属性会声明private私有的】

构造方法,给对象中属性进行初始化

 

static关键字

1.随着类的加载而加载

2.优先于对象存在

3.被类的所有对象共享

共性用静态,特性用非静态

static声明的成员属性可以通过类名调用

其实它本身也可以通过对象名调用

推荐使用类名调用强调

静态修饰的内容一般我们称其为:与类相关的类成员

 

static的注意事项掌握

static的可以用来修饰属性,也可以用来修饰方法

在静态方法中是没有this关键字的掌握】

  静态是随着类的加载而加载,this是随着对象的创建而存在。

静态比对象先存在。

 

静态方法只能访问静态的成员变量和静态的成员方法掌握】

非静态方法可以访问静态的成员变量和静态的成员方法掌握】

简单记: 静态只能访问静态。

 

静态变量成员变量的区别掌握

静态变量也叫类变量 成员变量也叫对象变量

所属不同

静态变量属于类,所以也称为为类变量

成员变量属于对象,所以也称为实例变量(对象变量)

内存中位置不同

静态变量存储于方法区的静态区

成员变量存储于堆内存

内存出现时间不同

静态变量随着类的加载而加载,随着类的消失而消失

成员变量随着对象的创建而存在,随着对象的消失而消失

调用不同

静态变量可以通过类名调用,也可以通过对象调用(不推荐)

成员变量只能通过对象名调用

 

JAVA 的注释掌握

JAVA 的注释大致分为3
1、行注释(单行注释)
就是在一行的最前端 写上 //”
2、块注释(多行注释)
就是在要注释的代码块的前面加上
/*在结尾加上*/”
3、文档注释
文档注释一般用于
方法或类上  “/** 在结尾加上*/”         (写的位置方法或类声明之前)

 

 "说明书"的制作过程了解】

对ArrayTool工具类加入文档注释

 通过javadoc命令生成说明书

1.@author(提取作者内容)

2.@version(提取版本内容)

3.@param 参数名称//形式参数的变量名称

4.@return 函数运行完返回的数据 

5.javadoc -d 指定的文件目录 -author -version ArrayTool.java

:javadoc -d C:\Users\guoyongfeng\Desktop\doc  -author -version ArrayTool.java ,在文档化进,ArrayTool的类必须为public  

 

  

 

  

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值