java封装特性简述

        java语言面向对象之封装特性,在给大家介绍封装特性之前我要先给大家说一下java语言的类和对象:

        类:它是一个对象的集合,它是对象的抽象,他主要用于描述一组对象的行为和共同特征,比如说,有一个抽象的学生类,他们的共同特征是同时具有以下信息:学号、姓名、年龄、班级,所以我们定义他们的共同特征(成员变量)用来描述对象的特征:

private String stuNumber;
private String stuName;
private int stuAge;
private String stuClass;

    他们的共同行为:学习、吃饭、休息,所以我们可以给他们定义以上行为(方法)用来描述对象的行为:

public void StuStudy(){
//这里是学习方法
}
public void StuEat(){
//这里是吃饭方法
}
public void StuSleep(){
//这里是休息方法
}

     这里其中的stuNumber/sutName/stuAge/stuClass,就是这个类的成员变量

    其中的StuStudy()/StuEat()/StuSleep(),就只这个类的成员方法

    以上大家应该都不会陌生,这就是简单的定义了一个类,然后写了变量和方法,但是和我们接下来要说的就很相近了

    说完了类,我们再来说一下对象,相信大家在刚开始学习java语言的时候都有遇到过这一段代码:

import java.util.Scanner;
//导包
public class test{
    public void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int age = sc.nextInt();
        System.out.print("Your Age is" + age);
    }
}

    上面的代码,我们获取了键盘上的输入,然后输出了他,大家仔细看一看,这里其实我们new了一个Scanner对象sc,然后用这个对象sc调用了他的成员方法:nextInt();这里的sc就是一个对象;

        说完了对象和类,就可以进入正题,浅谈java语言封装特性,大家在看上面几段代码的时候可能会疑问,private是干什么用的?这里给大家介绍一下java语言中用来修饰一个变量的几个关键字先:

public:公有的,被他修饰的变量或者方法,在类外也可以访问到,

private:私有的,被他修饰的变量或者方法,只能在当前类访问得到(继承也不能访问到)

protect:受保护的,被他修饰的变量或者方法,只能在被继承后的子类中访问得到

    我们此处用的就是private关键字修饰了我们的学生的共同特征(成员变量),在java封装中,一般的成员变量都是用private关键字修饰,用来保护我们的数据不能被其他类修改,那么,我们已经设置了不能被修改,我们想修改的时候怎么办呢?我们就只能通过一些被public修饰的方法来修改被private修饰的成员变量,比如说getXXX/setXXX方法,具体实施如下:

(默默打开了我的eclipse,我不想敲了,然后这个网页上写的格式也不对,难受)

class StudentList {
//定义了一个学生类,私有化了他的成员变量
private String stuName;
private int stuAge;
private String stuClass;
//使用public关键字修饰了他的get/set方法
//通过这些方法来访问StudentList类中被私有化的成员变量
public String getStuName() {
return stuName;
}
public void setStuName(String stuName) {
this.stuName = stuName;
}
public int getStuAge() {
return stuAge;
}
public void setStuAge(int stuAge) {
this.stuAge = stuAge;
}
public String getStuClass() {
return stuClass;
}
public void setStuClass(String stuClass) {
this.stuClass = stuClass;
}
}
class StudentList {//定义了一个学生类,私有化了他的成员变量private String stuName;private int stuAge;private String stuClass;//使用public关键字修饰了他的get/set方法//通过这些方法来访问StudentList类中被私有化的成员变量

    好的到这里我们已经定义好了一个学生的类,用来描述学生的特征,然后我们可以通过get/set方法来访问他的私有化变量;

    下面跟大家讲述一下怎么来实例化对象,在一个抽象的类中实例化一个存在的学生:

class Test{
	public static void main(String[] args) {
		StudentList stu1 = new StudentList();
		stu1.setStuName("stu1");
		stu1.setStuAge(19);
		stu1.setStuClass("sof2");
	}
}

    通过new关键字,我们实例化了一个对象,然后通过set方法设置了该对象的属性,如果要输出则使用以下代码:

System.out.print("stuName" + stu1.getStuName + ",stuAge" + stu1.getStuAge + ",stuClass:" + stu1.getStuClass);
//使用该对象的get方法访问到该对象的数据;

    我们在set获取的时候也可以设置一些东西:比如说年龄是否合法什么的,这些就不多说了,很简单,这个时候我们几乎已经介绍完了封装特性的所有,其实就是一些简单的语法,但是下面说的才是对于封装的正经的话:

        java封装特性可以让我们在实际开发的时候变得简单,无论是什么,我们找到他们的共同特征,给他们抽象出一种共有的特征,抽象出他们的共有行为,放到一个类中,然后我们就可以在使用他的时候直接实现他的特征,调用他的行为方法,用来描述一个对象的特征和行为,同时java封装特性也为我们开发提供了很多方便,比如说,我们在开发的时候,某一个类有很多的属性或者行为,难不成要把这些东西全部写到参数列表吗?其实不然,我们可以将其封装,之后参数列表就只有一个对象,我们在方法中再去通过该对象的方法访问该对象的信息,所以在实际开发中,封装特性会让一切变得简单;

        封装暂时就到这里,学习编程语言是一个漫长的过程,没有谁是可以一蹴而就的,希望无论将来这条路有多么艰难,渴望技术的朋友都可以继续勇往直前走下去,保持自己的初心,如果一切都那么容易了,怎么配得上高薪呢?

  • 9
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值