封装与隐藏

封装性

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

package com.www.java;
/*
 * 面向对象的特征一:封装与隐藏
 * 
 */
public class AnimalTest {
	public static void main(String[] args) {
		Animal a = new Animal();
		a.name = "花花";
		a.age = 1;
		//a.legs = 4;//The field Animal.legs is not visible
		a.show();
		
		a.setLegs(6);
		a.show();
	}
}

class Animal{
	String name;
	int age;
	private int legs;//避免用户调用此属性(有些贱兮兮的非要给猪崽子-4条腿)
	
	public void setLegs(int i) {
		if(i > 0) {
			legs = i;
		}else {
			legs = 0;
		}
	}
	
	public int getLegs() {
		return legs;
	}
	public void eat() {
		System.out.println("动物进食");
	}
	
	public void show() {
		System.out.println("名字:"+name+",年龄:"+age+",腿:"+legs);
	}
}

在这里插入图片描述

在这里插入图片描述

package com.www.java;

public class Order {
	private int orderPrivate;
	int orderDefault;
	public int orderPublic;
	
	private void methodPrivate() {
		orderPrivate = 1;
		orderDefault = 2;
		orderPublic = 3;
	}
	void methodDefault() {
		orderPrivate = 1;
		orderDefault = 2;
		orderPublic = 3;
	}
	public void methodPublic() {
		orderPrivate = 1;
		orderDefault = 2;
		orderPublic = 3;
	}
}

package com.www.java;

public class OrderTest {
	public static void main(String[] args) {
		Order order = new Order();
		order.orderDefault = 1;
		order.orderPublic = 2;
		//出了order类后,私有结构无法使用
		//order.orderPrivate = 3;The field Order.orderPrivate is not visible
		
		order.methodDefault();
		order.methodPublic();
		//order.methodPrivate();The method methodPrivate() from the type Order is not visible
	}
}

package com.wuww.java;

import com.www.java.Order;

public class OrderTest {
	public static void main(String[] args) {
		Order order = new Order();
		
		order.orderPublic = 2;
		
		//出了所属包后,私有结构、缺省结构无法调用
		//order.orderDefault = 1;The field Order.orderDefault is not visible
		//order.orderPrivate = 3;The field Order.orderPrivate is not visible
		
		order.methodPublic();
		
		//order.methodDefault();The method methodDefault() from the type Order is not visible
		//order.methodPrivate();The method methodPrivate() from the type Order is not visible
	}
}

练习

在这里插入图片描述

package com.www.java;

public class Person {
	private int age;
	
	void setAges(int a) {
		if(a < 0 || a > 130) {
			System.out.println("非法年龄");
			return;				
		}
		age = a;
		
	
	}
	int getAges() {
		return age;
	}
}

package com.www.java;

public class PersonTest {
	public static void main(String[] args) {
		Person p = new Person();
		p.setAges(150);
		System.out.println(p.getAges());
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

新手学java2021

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值