好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

一篇文章带你深入了解Java封装

如何实现封装

可以分为两步:

第一步:将类的变量声明为private。

第二步:提供公共set和get方法来修改和获取变量的值。

代码展示

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

public class User {

     private String name;

     private int age;

     private int id;

     private String address;

     public int getAge(){

         return age;

     }

     public String getName(){

         return name;

     }

     public int getId(){

         return id;

     }

     public String getAddress(){

         return address;

     }

     public void setName(String Newname){

         name = Newname;

     }

     public void setAge( int Newage){

         age = Newage;

     }

     public void setAddress(String Newaddress){

         address= Newaddress;

     }

}

 

class Mainclass{

      public static void main(String[] args) {

         User user = new User();

         user.setAge( 18 );

         user.setName( "Kevin" );

         user.setAddress( "江苏" );

         System.out.println( "Name:" +user.getName()+ ",Age:" +user.getAge());

     }

}

上面就是一个写好的封装啦 但是有很多用户,很多属性,写起来就很麻烦,下面提供一种一行代码搞定的方法

构造方法

?

1

2

3

public User{

// 方法名与类名同名 没有返回值结构 其他与普通方法无异

}

注意点:

对于每个类而言,都默认具有一个隐式的空参数构造方法 如果显式写了任意一个构造方法,空参数构造方法都会被覆盖

代码展示

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

public class User {

     private String name;

     private int age;

     private int id;

     private String address;

     public User(String name, int age, int id, String address) {

         this .name = name;

         this .age = age;

         this .id = id;

         this .address = address;

     }

 

 

     public int getAge(){

         return age;

     }

     public String getName(){

         return name;

     }

     public int getId(){

         return id;

     }

     public String getAddress(){

         return address;

     }

     public void setName(String Newname){

         name = Newname;

     }

     public void setAge( int Newage){

         age = Newage;

     }

     public void setAddress(String Newaddress){

         address= Newaddress;

     }

     public void setId( int Newid){

         id = Newid;}

}

 

 

class Mainclass{

      public static void main(String[] args) {

         User user = new User( "kevin" , 18 , 001 , "江苏" ); //一行代码就能赋值啦

 

         System.out.println( "Name:" +user.getName()+ ",Age:" +user.getAge());

     }

}

总结

封装的优点

良好的封装能够减少耦合。 类内部的结构可以自由修改。 可以对成员变量进行更精确的控制。 隐藏信息,实现细节。

本篇文章就到这里了,希望能给你带来帮助,也希望您关注的更多内容!

原文链接:https://blog.csdn.net/wxbbbbb/article/details/119244976

查看更多关于一篇文章带你深入了解Java封装的详细内容...

  阅读:12次