首页 > 编程语言 >Java基础——封装

Java基础——封装

时间:2022-10-08 10:11:44浏览次数:54  
标签:封装 student void 基础 Student Java public name

一、什么是封装 封装就是对象的属性和操作结合为一个整体,和并尽可能隐藏对象内部的细节。 二、为什么要封装 1.为了安全,提高程序的复用性,封装就是该漏的,该藏得藏。 2.如果没有封装就是任意的赋值,任意的取值 三、封装的实现 例如: 1.私有化成员变量 2.提供set和get

public class Student {
    private String name;
    private int age;
     private String  gender;
    public String getName() {
         return name;
    }
    public void setName(String name) {
         this.name = name;
    }
    public int getAge() {
         return age;
    }
    public void setAge(int age) {
          //可以判断年龄区间是否为正常人,添加自己的业务逻辑
         if(age>=0 && age <=120){
            this.age = age;   
         }else{
           System.out.println("你不是人");  
         }
    }
    public String getGender() {
         this.gender=gender
    }
    public void setGender(String gender) {
         //可以判断是否为男或女(字符串是否相等equals),添加自己的业务逻辑
         if(gender.equals("男") || gender.equals("女")){
             this.gender=gender
         }else{
              System.out.println("参数有误");
         }
        return gender;
    }
}
public class Student{
    public void test(int score){
        s.setName("zs");
        //会判断你不是人
        s.setAge(66666);
        //会判断参数有误
        s.setGender("kkgjrijgrj");
   
四、方法的封装
public class Student{
    public void isPass(int grade){
        //通过if判断成绩是否合格
        if(grade>=60){
            System.out.println("过了");
        }else{
            System.out.println("挂了");
        }
    }
}
Student student=new Student();
//调用方法看是否合格
student.isPass(70);
五、参数封装 当传入很多参数需要些很多个,这时候我们会很麻烦,所以将这些数据放入一个对象中,用对象存储数据,如下两种:
public class StudentService {
    //如果没有封装之前,有很多个参数,需要一个一个写
    public void addStudent(String name,String password,String gender){
         System.out.println("name:"+name+","+"gender:"+gender);
    }
    //方法重载参数进行封装
    public void addStudent(Student student){
         System.out.println("name:"+student.getName()+","+"gender:"+student.getGender());
    }
}
//调用,如果添加数据会添加很多行
StudentService studentService=new StudentService();
int addStudent=StudentService.addStudent("djmm","123123","女")
int addStudent2=StudentService.addStudent("H","123456","男")
//调用的话Set和Get赋值,直接输出student
Student student=new Student();
student.setName("hzj");
student.setGender("男");
StudentService.addStudent(student);
六、封装返回值 进行程序封装时,应尽量避免一个模块直接修改或操作另一个模块的数据,模块设计追求高内聚,低耦合
public class StudentService{
    public void getStudentByName(Student student){
        Student student=new Student();
        student.setName("");
        return student;
    }
}

 

标签:封装,student,void,基础,Student,Java,public,name
From: https://www.cnblogs.com/YHSDDJM/p/16768107.html

相关文章

  • [转]Linux时间同步基础知识
    原文地址:Linux时间同步基础知识|云中君(gitee.io)总结:中国使用CST:ChinaStandardTime,中国标准时间,与原子钟报时的协调世界时(UTC)关系:比UTC早8个小时,记为UTC+8,使......
  • Java基础——方法
    一、定义方法1.除了main方法以外,我们还可以自己定义方法,方法是程序执行的最小单元。2.定义了方法可以直接调用,可以直接拿来用,缩小了代码的冗余。在Student类中定义方法......
  • javascript中的糖衣语法--Promise对象
    一、Promise的诞生1、回调地狱最初javascript的异步实现就是使用回调函数。回调地狱就是:一个函数需要等它的回调函数(或者回调和回调的回调...)执行完毕之后再执行。简单......
  • spring boot集成redis基础入门
    redis支持持久化数据,不仅支持key-value类型的数据,还拥有list,set,zset,hash等数据结构的存储。可以进行master-slave模式的数据备份更多redis相关文档请查看redis官方文......
  • Java基础——类
    一、类1.类是对一类具有相同属性或者行为的事物的描述。类生成对象,在实际开发中通过对象处理我们的业务逻辑。2.定义类:例PublicclassStudent{//属性......
  • Java基础——对象
    区分对象:1.在外部通过引用指向的地址(直接打印引用)。2.在内部,通过this来区分。3.直接打印引用变量会调用toString方法。一、new了两个是指向两个地址Students1=new......
  • 测试基础
    各测试分类详解 各测试分类详解单元测试(UT,unittesting),是指对软件中的最小可测试单元进行检查和验证。对于单元测试中单元的含义,一般来说,要根据实际情况去判定其具......
  • Java如何调用HttpURLConnection类模拟浏览器访问呢?
    下文笔者讲述使用Java代码模拟浏览器请求的方法分享,如下所示:实现思路:使用HttpURLConnection类即可模拟浏览器访问例:packagecom.java265.other;importjava.......
  • java类与对象课后测试
    1.测试ClassAndObjectTest.javapublicclassClassAndObjectTest{publicstaticvoidmain(String[]args){//创建类的实例,定义一个对象变量引用......
  • JavaWeb/JavaEE开发入门(概述-总纲)
    作为初学者的浅知薄见,漫谈概览.欢迎指正和交流.1.从SE到Web到EE开发刚入门Java开发的时候,即使对于计算机网络有所了解,但是对于从围绕JDK展开学习的JavaSE的过程......