zoukankan      html  css  js  c++  java
  • 【java开发】封装与继承

    2.封装
    把属性封起来(私有化private)
    提供了一对公有(public)的方法(getter/setter)来对属性进行操作(读取和设置)
    这样做以后可以对属性值的有效性进行判断,避免出现不合法的值
     
     
    使用private封装后,如新建了Person类,使用private封装name,age等属性后,在main函数中new一个Person对象后,不能直接调用Person类的属性,因此,在封装后,要使用Person类的属性需要使用公有的方法public方法 get和set方法来获取属性值和改变属性值
    public class Person
    {
        private String name;
        private int age;
        
    }
     
     
    添加get和set方法
    public class Person
    {
        private String name;
        
        private int age;
        
        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;
        }
        
    }
    在main函数中
    public class Test1
    {
        public static void main(String[] args)
        {
            Person p=new Person();
            p.setAge(10);
    p.setName("zhangsan");
            System.out.println(p.getAge()+" "+p.getName());
        }
    }
    输出结果为10
    即可以使用set来设置属性值,使用get方法可以获取值
     
    3.构造方法
    定义:与类名同名 的方法 ,没有返回值
    作用:在(new)创建对象的时候,同时初始化一些一些信息,有传值的作用;同时构造函数也有有参和无参两种形式
     
    public class Person
    {
        private String name;
        
        private int age;
        public Person(String name,int age)
        {
            this.name=name;
            this.age=age;
        } 
    }
    在创建类的时候,创建构造方法,()内为传入参数
    在main函数中
    public class Test1
    {
        public static void main(String[] args)
        {
            Person p=new Person("张三",10);
        }
    }
    main函数中new对象实例p的时候,因为Person类的构造函数有参数,因此在对象实例化的时候,必须要传入参数,因此 Person p=new Person("张三",10);就相当与继承中的setName()和setAge()方法将name和age设置了值,因此要打印出p的name和age属性值,要在Person类中给封装的属性添加get()方法才能获取到利用构造函数传入的属性值
     
     
    是一种很特殊的函数gsan.sex='男';
    用于创建对象
    如果没有写构造方法,那么系统会提供一个默认无参构造方法
    如果你写了构造方法,那么系统将不再提供构造方法,那么这个时候只能用你自己写的构造方法
     
     
    除了封装,可以使用get和set方法来获取和改变属性值,还可用构造方法的方式。
     





  • 相关阅读:
    mybatis的分页插件pagehelper的使用
    SSM框架中添加事务
    junit测试,spring中使用
    maven的聚合和继承,maven的依赖
    shiro的角色和权限
    tomcat配置虚拟文件路径
    通过HttpServletRequest的request获取各种路径
    shiro学习一
    JDBC
    GUI
  • 原文地址:https://www.cnblogs.com/duanyajuzi/p/4753174.html
Copyright © 2011-2022 走看看