第六章:类和对象

6.1:面向对象的描述

6.1.1 对象

对象是事物存在的实体

6.1.2 类

同一类事物的统称,以方法的形式定义

6.1.3 封装

封装是面向对象编程的核心思想,简单点说就是,我把某些东西封装起来,这些关键的核心的东西不能给你看,但是我可以提供给你一些简单使用的方法。

就说现在最最常用的手机,人人都会用,打电话、发短信、玩游戏、刷视频等等,但你知道手机怎么实现这些功能的吗??不知道吧,我们会用就可以了,怎么实现的对我们来说不重要。那这就很类似封装的理念了。

封装其实是对外隐藏复杂细节,提供简单易用的接口,便于外界调用,从而提高系统的可扩展性、可维护性。在Java中这种隐藏或公开是通过权限修饰符来实现的。

特点:封装性,继承性,多态性

采用封装保证内部结构完整性

6.1.4 继承

类与类之间同样具有关系,称为关联。继承就是关联的一种。

例如:水果(父类)——香蕉,苹果,橘子......——苹果:脆的,粉的(子类)....

父类和子类存在层次关系

第六章:类和对象_第1张图片

6.1.5:多态

多个形态

第六章:类和对象_第2张图片

6.2:类

6.2.1:成员变量


public class Sixone {   //类

	private String name; //String类型的成员变量
	public String getName() {//name的Getter方法
		return name;
		
		
	}
	public void setName(String name) {//name的set方法
		this.name=name;//将参数的值赋予成员变量
	}
	
}
//6.1例题

静态属性和动态属性

直接写在类里的叫成员变量

6.2.2:成员方法

框住局部变量

6.2.3: 权限修饰符

Java语言中修饰符权限
访问包位置 public(公开) protected(受保护的) default(默认) privite(私有的)
本类 可见 可见 可见 可见
同包其他类或子类 可见 可见 可见 不可见
其他包的子类 可见 可见 不可见 不可见
其他包的非子类 可见 不可见 不可见 不可见

getter:拿取和setter:设置鸟类名字 方法(自动生成)

1.右键

第六章:类和对象_第3张图片

2.点击蓝色选项 

第六章:类和对象_第4张图片

点击蓝色选项 

第六章:类和对象_第5张图片

 4.点击勾选选项

第六章:类和对象_第6张图片

 第六章:类和对象_第7张图片

5.点击蓝色Generate,生成成功

第六章:类和对象_第8张图片

 6.2.4: 局部变量

例题6.2

6.2.5:局部变量的有效范围

6.2.6:this关键字

public class Bird {//静态属性
	//静态属性————成员变量去写
	private String name;//名字     //default默认的意思
	private String wing;//翅膀
	private String mouth;//嘴
	private String head;//头
	
	
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;//指这个类bird
	}
	public String getWing() {
		return wing;
	}
	public void setWing(String wing) {
		this.wing = wing;
	}
	public String getMouth() {
		return mouth;
	}
	public void setMouth(String mouth) {
		this.mouth = mouth;
	}
	public String getHead() {
		return head;
	}
	public void setHead(String head) {
		this.head = head;
	}

6.3 :类的构造方法

产生对象但信息不全面(需要传入参数)

	
	//构造方法:调用构造方法创造一个对象
	public Bird(String name,String wing,String mouth,String head) {  //传入参数//构造了鸟这个类
		this.name = name;
		this.wing = wing;
		this.mouth = mouth;
		this.head = head;
		
	}

快捷

1.选蓝色卡

第六章:类和对象_第9张图片

2.勾选

第六章:类和对象_第10张图片

 6.2例题


 public class  Sixone{
	 
	 public static int[] exchange(int[]arr) {
		 
	int tmp=arr[0];
	arr[0]=arr[1];
	arr[1]=tmp;
	return arr;
		 }
	public static void main(String[]args) {
		int arr[]= {17,29};
		System.out.print("第一个值="+arr[0]+"第二个值="+arr[1]);
		arr = exchange(arr);
		System.out.print("第一个值="+arr[0]+"第二个值="+arr[1]);
		
	} 
	 
 }//例题6.2
 

第六章:类和对象_第11张图片

6.3例题

编写成员变量

使用快捷键(参考我选项卡

1.静态属性——成员变量

2.动态属性——成员方法

public class People {
  //姓名   //年龄   //性别   //身高   //体重
	//成员变量:类型加变量名
	private String name;//用修饰符修饰
	private int age;
	private String sex;
	private float hight;
	private float weight;
	
	
	
	//使用getter和setter方法对外部提供
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public String getSex() {
		return sex;
	}
	public void setSex(String sex) {
		this.sex = sex;
	}
	public float getHight() {
		return hight;
	}
	public void setHight(float hight) {
		this.hight = hight;
	}
	public float getWeight() {
		return weight;
	}
	public void setWeight(float weight) {
		this.weight = weight;
	}
	
	
	
	
	
	
	
	
	
	
	

成员方法


	//成员方法
	//写代码 方法名:code 传入参数:语言,返回参数:”某某某正在写xxx代码“
	public String code(String language) {  //公开+类型+传入参数
		
		return name+"张红"+language+"Java代码";//返回name值+类型
		
	}
	
	public String introduce() {
		
		return age+"梁深年22岁" + sex + "性别男" +hight+"1米88" +hight+"60kg";
		
	}
	
	
	
	
}

你可能感兴趣的:(java,开发语言)