Java关键字private

博客介绍了Java关键字private,使用它定义的数据只能在本类中访问,这是基本的封装。封装是隐藏对象属性和实现细节,仅对外提供公共访问方式,有提高代码复用性和安全性等好处,还给出了相关练习。

java 关键字 private
private:私有的

使用private定义数据,会使这个数据只能在本类中访问,这就是最基本的封装
封装概述:是指隐藏对象的属性和实现细节,仅对外提供公共访问方式
好处:隐藏实现细节,提供公共的访问方式。提高了代码的复用性。提高了安全性
封装原则:将不需要对外提供的内容都隐藏起来。把属性隐藏,提供公共方法对其访问

 

class Student{
	
	/*StudentDemo类是一个测试类,测试类一般只创建对象,调用方法
	所以这个判断应该定义在Student类中*/
	String name;
	//private把年龄这一成员变量变成了本类中私有的变量,只能由本类中的方法调用,这就是基本的封装
	private int age;
	
	/*不可以在成员变量的位置进行判断,因为数据校验必须依靠一些逻辑语句
所以校验应该在成员方法中*/
	public void setAge(int a) {
		if(a<0||a>120)
			System.out.println("你给的年龄有问题");
		else
			age=a;
	}
	
	public void show() {
		System.out.println(name);
		System.out.println(age);
		System.out.println("-----------");
	}
}
public class FengZhuanTest {
	public static void main(String[] args) {
		Student s = new Student();
		//s.age=27;
		s.setAge(27);
		s.name="张三";
		s.show();
		
		/*通过对象给成员变量赋值,可以赋值一些非法的数据,这是不合理的,应该在赋值之前先对数据进行判断*/
		//s.age=-27;
		s.setAge(-27);
		s.show();
	}
}

 private的练习:

给出长方形的长和宽,求出周长和面积

import java.util.Scanner;//import 必须写在所有class的前面,这个是读入键盘输入的包
class ChangFangXing{
	//长方形的长
	private int length;
	//长方形的宽
	private int width;
	
	//赋值
	public void setLength(int length) {
		this.length=length;
	}
	
	//赋值
	public void setWidth(int width) {
		this.width=width;
	}
	
	//长方形周长
	public int ZhouChang() {
		return (length+width)*2;
	}
	
	//长方形的面积
	public int mainji() {
		return (length*width);
	}
}
public class ChangFangXingTest {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		System.out.println("请输入长方形的长:");
		int length=sc.nextInt();//键盘输入
		System.out.println("请输入长方形的宽:");
		int width=sc.nextInt();//键盘输入
		
		ChangFangXing cfx = new ChangFangXing();
		cfx.setLength(length);
		cfx.setWidth(width);
		
		System.out.println("长方形的周长是:"+cfx.ZhouChang());
		System.out.println("长方形的面积是:"+cfx.mainji());
	}
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值