练习 1 :
创建程序:在其中定义两个类: Person 和 PersonTest 类。定义如下:
用 setAge() 设置人的合法年龄 (0~130) ,用 getAge() 返回人的年龄。在 PersonTest 类中实例化 Person 类的对象
b ,调用 setAge() 和 getAge() 方法,体会 Java 的封装性。
代码
package chapter06_oop1_teacher.src.com.atguigu07.encapsulation.exer1;/*** ClassName: Person* Description:** @Author 尚硅谷-宋红康* @Create 15:30* @Version 1.0*/ public class Person {private int age;//设置age属性public void setAge(int a){if(a >= 0 && a <= 130){age = a;}else{System.out.println("你输入的数据非法");}}//获取age属性public int getAge(){return age;}//错误的 // public int doAge(int a){ // if(a >= 0 && a <= 130){ // age = a; // return age; // }else{ // System.out.println("你输入的数据非法"); // return -1; // } // }}
package chapter06_oop1_teacher.src.com.atguigu07.encapsulation.exer1;/*** ClassName: PersonTest* Description:** @Author 尚硅谷-宋红康* @Create 15:32* @Version 1.0*/ public class PersonTest {public static void main(String[] args) {//创建Person实例1Person p1 = new Person(); // p1.age = 10; //编译不通过 // System.out.println(p1.age);p1.setAge(20);System.out.println(p1.getAge());} }
练习 2 :
自定义图书类。设定属性包括:书名 bookName ,作者 author ,出版社名 publisher ,价格 price ;方法包
括:相应属性的 get/set 方法,图书信息介绍等。
代码
package chapter06_oop1_teacher.src.com.atguigu07.encapsulation.exer2;/*** ClassName: Book* Description:** @Author 尚硅谷-宋红康* @Create 15:37* @Version 1.0*/ public class Book {private String bookName; //书名private String author; //作者private double price; //价格public String getBookName() {return bookName;}public void setBookName(String bn) {bookName = bn;}public String getAuthor() {return author;}public void setAuthor(String a) {author = a;}public double getPrice() {return price;}public void setPrice(double p) {price = p;}//获取读书信息public String showInfo() {return "bookName : " + bookName + ", author : " + author + ", price : " + price;}}
package chapter06_oop1_teacher.src.com.atguigu07.encapsulation.exer2;/*** ClassName: BookTest* Description:** @Author 尚硅谷-宋红康* @Create 15:40* @Version 1.0*/ public class BookTest {public static void main(String[] args) {Book book1 = new Book();book1.setBookName("剑指Java");book1.setAuthor("尚硅谷教育");book1.setPrice(180.0);System.out.println(book1.showInfo());} }