一、前言
我們上次學過java的方法,現在我們來學習新的一篇,也算是java中比較重要的一節了
面向對象基礎是java中核心。
面向對象主要包括封裝、繼承、多態
我們這節主要講的是封裝,在這之前我們先來了解一下類和對象的定義和關系
什么是對象?
世間一切都是對象,萬物解釋對象,對象就是看得見摸得著的東西。
什么是類?
類是現實生活中對具有屬性和行為同一類的總稱。
類和對象的關系?
類是對象的抽象化,對象是類的實例化
類的定義 ?
類是java中的基本概念,java中就是以類為基礎的,由類所構成的
怎么創建對象?
創建對象是java中常用的形式
格式:
類名對象名=new 類名();舉例 Phone p=new Phone();
創建對象的作用?
通過創建對象,該類實例化,我們就可以通過創建的對象訪問該類下所有成員也可以修改
所訪問的成員變量。(不包括private修飾的成員)
創建兩個類,
Phone類下:
PhoneDemo下:
Phone類下:
public class Phone { public int price=3999; public String brand="華為"; public static void playGame(){ System.out.println("這手機可以打游戲"); } }
PhoneDemo下:
public class PhoneDemo { public static void main(String[] args) { Phone p=new Phone();//創建對象 System.out.println(p.brand); System.out.println(p.price); p.playGame(); } }
以上我們演示了創建對象的作用功能。
通過對象的修改這里就不一一演示了。
二、封裝
封裝是把類中的成員用private修飾使他不能被所以改變,然后提供get/set方法對鎖封裝
的成員進行賦值和賦值限制。
封裝的好處?
封裝使數據變得更有條理,我們提供的條件可以對外接輸入的值進行篩選和判斷,比如
設一個年齡,我們可以設置年齡的范圍,和年齡的非負,并且給出相應的提示。
封裝的演示圖:
Student類下:
代碼:
public class Student { private String name; private int age; public Student(){}//無參構造 public Student(String name,int age){// 有參構造 if(age<0){ System.out.println("你輸入的年齡有誤,默認為18歲"); this.age=18; this.name=name;} else{ this.age=age;this.name=name;} } public void setName(String name){//get/set方法 this.name=name; } public String getName(){ return name; } public void setAge(int age){ if(age<0){ System.out.println("你輸入的年齡有誤,默認為18歲"); this.age=18; }else{ this.age=age; } } public int getAge(){ return age; } }
StudentDemo類下:
代碼:
public class StudentDemo { public static void main(String[] args) { Student s=new Student();//創建無參對象 s.setAge(20); s.setName("張三"); System.out.println(s.getName()+" ,"+s.getAge()); s=new Student("李四",-1);//創建對象的同時賦值 System.out.println(s.getName()+","+s.getAge()); } }
我們也可以在輸入年齡的時候加上Sanner進行鍵盤上的輸入這里就不演示了
總結
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關注服務器之家的更多內容!
原文鏈接:https://blog.csdn.net/weixin_60719453/article/details/120736499