JAVAEE第一篇 | 类与对象 封装 构造方法 JavaBean

学习目标

  • 能够理解面向对象思维
  • 面向对象和面向过程的区别
  • 类的定义格式
  • 对象的定义和使用
  • 成员变量和局部变量的区别
  • private的含义
  • this关键字的概念和使用
  • 构造方法的含义
  • JavaBean标准类定义

面向对象思想

  • 面向对象概念
    这里的对象泛指一切事物,在java中一切皆对象,每种事物都具备自己的属性和行为,属性一般指的是事物的状态比如颜色 尺寸,行为一般指事物能够做什么比如跑.强调的是通过对象的行为去实现功能,它区别于面向过程思想,面向过程强调的是一步一步的自己去实现.
  • 面向对象和面向过程的区别
    举例(洗衣服):
    面向过程: 把衣服脱下来–>找一个盆–>放点洗衣粉–>加点水–>浸泡10分钟–>揉一揉–>清洗衣服–>拧干–>晾 起来
    面向对象: 把衣服脱下来–>打开全自动洗衣机–>扔衣服–>按钮–>晾起来
    总结:
    面向过程:强调的是实现洗衣服行为的过程
    面向对象:强调的是洗衣机这个对象,至于洗衣机怎么洗的衣服咱们不管.
  • 面向对象的三大特征**
    封装 继承 多态

类和对象

  • 什么是类
    是一系列属性和行为的组合,通过这些属性和行为来描述一类事物
    举例:比如人是一个类
    属性:姓名 身高 肤色 体重
    行为:跑 说话等
  • 什么是对象
    是一类事物的具体体现.
    举例:比如叫小明的这个人
    属性:姓名 身高 178cm 肤色 黄色 体重 60kg
    行为:跑 非常快 说话:汉语
  • 什么是属性和行为
    属性:事物的状态信息
    行为:这个事物能做什么

JAVA中类的定义及使用

  • 类的定义格式
public class 类名{
   定义类的属性,java中叫成员变量
   定义类的行为,java中叫成员方法
}
  • 类定义格式的举例
public class Person{
	String name;
    Integer heigth;//成员变量
    String skinColor;
    Integer weight;
    
    //成员方法
    public  void personRun(){
        System.out.println("跑的行为");
    }
    public  void personTalk(){
        System.out.println("说话的行为");
    }
}

对象的创建和使用

  • 对象的创建格式
类名 变量名 = new 类名();
  • 使用对象中的成员
对象名.成员变量
对象名.成员方法
  • 举例
   public static void main(String[] args) {
        Person person = new Person();
        //成员变量赋值
        person.name = "小明";
        person.heigth = 170;
        person.skinColor = "黄色";
        person.weight = 60;
        System.out.println("此人的姓名:"+ person.name);
        System.out.println("小明的身高:"+ person.heigth +"cm" + "体重:"+person.heigth);
        //成员方法调用
        person.personRun();
        person.personTalk();
    }

成员变量和局部变量

例子

public class car {
	//成员变量
    String color;
    public void drive(){
    //局部变量,在方法或者参数中,作用域在此方法中,并且必须有初始值
        int speed;
        System.out.println("速度:"+ speed);
    }
}
  • 在类中的位置不同
    成员变量:类中,方法外
    局部变量:方法中或者方法声明上(形式参数)
  • 作用范围不一样
    成员变量:类中
    局部变量:方法中
  • 初始化值的不同
    成员变量:有默认值
    局部变量:没有默认值。必须先定义,赋值,最后使用

面向对象-封装

  • 概述
    面向对象编程语言是对客观世界的模拟,客观世界里成员变量都是隐藏在对象内部的,外界无法直接操作和修改。 封装可以被认为是一个保护屏障,防止该类的代码和数据被其他类随意访问。要访问该类的数据,必须通过指定的 方式。适当的封装可以让代码更容易理解与维护,也加强了代码的安全性。
  • 原则
    将属性隐藏起来,如果访问和修改某个属性,需要调用公共的方法.
  • 步骤
    1-用private 修饰成员变量
    2-用get和set方法访问和修改成员变量
  • 封装的操作
public class Student {
	//private 修饰成员变量
    private  String name;
    private  int age;
    //公用方法访问和修改成员变量
    public String getName() {
        return name;
    }
    public void setName(String name) {
        name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        age = age;
    }
}
  • 封装的优化1 - this
  • this的含义
    方法被哪个对象调用,方法中的this就代表那个对象。即谁在调用,this就代表谁
  • this的格式
    this.成员变量
public class Student {
	//private 修饰成员变量
    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;
    }
}
  • 封装的优化2 - 构造方法
  • 构造的含义:当一个对象被创建时候,构造方法用来初始化该对象,给对象的成员变量赋初始值。
  • 构造的格式
修饰符 构造方法名(参数列表){ // 方法体 }
public class Student {
    private  String name;
    private  int age;

    Student(String name, int age){
        this.name = name;
        this.age = age;
    }
    Student(){
    }
    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;
    }
}
  • 通过对象调用
     public static void main(String[] args) {
        Student student = new Student();
        student.setAge(20);
        student.setName("小明");
        System.out.println("姓名:" + student.getName() + "年龄:" + student.getAge());
        Student student2 = new Student("小张", 22);
        System.out.println("姓名:" + student2.getName() + "年龄:" + student2.getAge());

    }

注意事项

  1. 如果你不提供构造方法,系统会给出无参数构造方法。
  2. 如果你提供了构造方法,系统将不再提供无参数构造方法。
  3. 构造方法是可以重载的,既可以定义参数,也可以不定义参数。

JavaBean

JavaBean 是 Java语言编写类的一种标准规范。符合 JavaBean 的类,要求类必须是具体的和公共的,并且具有无 参数的构造方法,提供用来操作成员变量的 set 和 get 方法。
格式

public class ClassName{ 
//成员变量 
//构造方法 
//无参构造方法【必须】 
//有参构造方法【建议】 
//成员方法
//getXxx()
//setXxx()
}
发布了40 篇原创文章 · 获赞 4 · 访问量 6339

猜你喜欢

转载自blog.csdn.net/oFlying1/article/details/104387591
今日推荐