類是對現實生活中一類具有共同屬性(類中方法外的變數)和行為(成員方法)的事物的抽象。class
物件是能夠看得到摸的著的真實存在的實體。
建立物件的格式:類名 物件名 = new 類名();
類是對事物的一種描述,物件則為具體存在的事物
呼叫成員的格式: 物件名.成員變數 物件名.成員方法();
private是乙個修飾符,可以用來修飾成員(成員變數,成員方法)
被private修飾的成員,只能在本類進行訪問,針對private修飾的成員變數,如果需要被其他類使用,提供相應的操作(get set方法)
提供「get變數名()」方法,用於獲取成員變數的值,方法用public修飾
提供「set變數名(引數)」方法,用於設定成員變數的值,方法用public修飾
this修飾的變數用於指代成員變數,其主要作用是(區分區域性變數和成員變數的重名問題)
方法的形參如果與成員變數同名,不帶this修飾的變數指的是形參,而不是成員變數
方法的形參沒有與成員變數同名,不帶this修飾的變數指的是成員變數
this代表當前呼叫方法的引用,哪個物件呼叫的方法,this就代表哪乙個物件
實參是形參被具體賦值之後的值,參加實際的運算,有實際作用
封裝概述是物件導向三大特徵之一(封裝,繼承,多型)是物件導向程式設計語言對客觀世界的模擬,客觀世界裡成員變數都是隱藏在物件內部的,外界是無法直接操作的
封裝原則將類的某些資訊隱藏在類內部,不允許外部程式直接訪問,而是通過該類提供的方法來實現對隱藏資訊的操作和訪問成員變數private,提供對應的get***()/set***()方法
封裝好處通過方法來控制成員變數的操作,提高了**的安全性把**用方法進行封裝,提高了**的復用性
抽象類:
(1) 抽象類使用abstract修飾;抽象類不能例項化,即不能使用new關鍵字來例項化物件;含有抽象方法(使用abstract關鍵字修飾的方法)的類是抽象類,必須使用abstract關鍵字修飾;
(2)抽象類可以含有抽象方法,也可以不包含抽象方法,抽象類中可以有具體的方法;
(3)如果乙個子類實現了父類(抽象類)的所有抽象方法,那麼該子類可以不必是抽象類,否則就是抽象類;抽象類中的抽象方法只有方法體,沒有具體實現;
介面:
(1) 介面使用inte***ce修飾;
(2) 介面不能被例項化;
(3)乙個類只能繼承乙個類,但是可以實現多個介面;
(4) 介面中方法均為抽象方法;
(5)介面中不能包含例項域或靜態方法(靜態方法必須實現,介面中方法是抽象方法,不能實現)
區別
(1)抽象類可以提供成員方法的實現細節,而介面中沒有;但是jdk1.8之後,在介面裡面可以定義default方法,default方法裡面是可以具備方法體的。
(2) 抽象類中的成員變數可以是各種型別的,而介面中的成員變數只能是public static final型別;
(3)介面中每乙個方法也是隱式指定為 public abstract,不能含有靜態**塊以及靜態方法,而抽象類可以有靜態**塊和靜態方法;
(4) 乙個類只能繼承乙個抽象類,而乙個類卻可以實現多個介面。
Java基礎知識點總結
一 方法的過載 方法的過載與返回值型別無關,只需滿足兩個條件即可 一是方法名相同,二是引數個數或型別不同。二 陣列初始化 動態初始化 在定義陣列時,只指定陣列長度,由系統自動為元素賦值的方式。靜態初始化 在定義陣列時為每個元素賦值。有兩種方式 陣列靜態初始化的方式有兩種 1.型別 陣列名 new 型...
RxJava基礎知識點總結
場景1 被觀察者 觀察者和訂閱分開寫 先建立乙個上游observable 角色 被觀察者 observableobservable observable.create new observableonsubscribe 建立乙個下游observer 角色 觀察者 observerobserver n...
CSS基礎知識點總結
一 css的簡介 1 什麼是css 層疊樣式表,css是對html進行樣式修飾語言 層疊 就是層層覆蓋疊加,如果不同的css樣式對同一html標籤進行修飾,樣式有衝突的部分應用優先順序高的,不衝突的部分共同作用 樣式表 就是css屬性樣式的集合 2 css的作用 1 修飾html的 使其html樣式...