专业的JAVA编程教程与资源

网站首页 > java教程 正文

Java面向对象高级特性-封装(java面向对象三大特点)

temp10 2024-11-13 12:42:12 java教程 11 ℃ 0 评论

package com.tencent.chapter07.封装;
/**
* <p>Title: Employee</p>
* <p>
* Description:
封装:
隐藏属性、方法或实现细节的过程称为封装
特点:
1.构造器与类一般使用public修饰
2.属性一般使用private修饰,对外提供访问器访问属性,get方法取值,set方法赋值
好处:
1.隐藏类的实现细节
2.让使用者只能通过事先定制好的方法来访问数据,可以方便地加入控制逻辑,限制对属性的不合理操作
3.可进行数据检查
-----------------------------------------------------------------------------
修饰类: public <default>
修饰变量、方法:public protected <default> private
public: 同类、同包、不同包子类、不同包
protected:同类、同包、不同包子类
<default>:同类、同包
private: 同类
* </p>
* @author xianxian
* @date 2023年1月4日
*/
public class Employee {
/**员工编号*/
private int empno;
/**员工姓名*/
private String ename;
/**员工工资*/
private double salary;
/**访问器(get与set)*/
public int getEmpno()
{
return empno;
}
public void setEmpno(int empno)
{
this.empno = empno;
}
public String getEname()
{
return ename;
}
public void setEname(String ename)
{
//3.可进行数据检查
if(ename == null || "".equals(ename))
{
System.out.println("雇员姓名不能为空");
return;
}
this.ename = ename;
}
public double getSalary()
{
//1.隐藏类的实现细节
return calSalary();
}
public void setSalary(double salary)
{
//2.让使用者只能通过事先定制好的方法来访问数据,可以方便地加入控制逻辑,限制对属性的不合理操作
if(salary < 2600)
{
System.out.println("薪资不能小于2600");
return;
}
this.salary = salary;
}
//1.隐藏类的实现细节
private double calSalary()
{
return salary + 5000 + 300 + 200 + (10000*0.1);
}
}

package com.tencent.chapter07.封装;
public class EmployeeTest {
public static void main(String[] args) {
Employee scott = new Employee();
//scott.empno = 7788;
//scott.ename = "斯卡特";
//scott.salary = -10000;//属性已被private修饰,不允许类以外的人访问
//调用set方法赋值
scott.setEmpno(7788);
scott.setEname(null); //雇员姓名不能为空
scott.setEname("斯卡特");
//scott.setSalary(-10000);//薪资不能小于2600
scott.setSalary(2600);//薪资不能小于2600
//调用get方法取值
System.out.println(scott.getSalary());
}
}

Java面向对象高级特性-封装(java面向对象三大特点)

以上就是我关于 Java面向对象高级特性-封装 知识点的整理与总结的全部内容,希望对你有帮助。。。。。。。

分割线

扩展知识

分割线

博主为咯学编程:父母不同意学编程,现已断绝关系;恋人不同意学编程,现已分手;亲戚不同意学编程,现已断绝来往;老板不同意学编程,现已失业三十年。。。。。。如果此博文有帮到你欢迎打赏,金额不限。。。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表