類:
創(chuàng)新互聯(lián)公司主營房縣網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,成都app開發(fā),房縣h5成都微信小程序搭建,房縣網(wǎng)站營銷推廣歡迎房縣等地區(qū)企業(yè)咨詢
人類
---某一類東西
成員:
身高,體重,性別...-------人類的一些屬性
對象:
你,我...
--------
某個人類
實例:
就是對象,說的是一個意思.
方法:
吃,喝,拉,撒,睡,玩
-----
每個人類能做的事情
構(gòu)造方法:
懷孕生子
----產(chǎn)生新的一個人的方法
接口:
醫(yī)生,老師,
牛人...----一類方法和集合約束(比如醫(yī)生就是診斷看病等方法的集合)
重載:
行走---(人是一種哺乳動物,
哺乳動物都會行走,
不過人是直立的跟父類不同,重新寫了父類的方法)
重構(gòu):
整容,
變性手術(shù)
---
就是在原有基礎(chǔ)上做修改使它更優(yōu),一般是要保證原功能不改變(只是更漂亮性能更好)也有少數(shù)例外,會重構(gòu)去掉不需要的功能增加其他功能,比如變性手術(shù).
類的封裝:
心跳,思考...等都只能你自己做,別人不能給你做,這是封裝
繼承:
人從哺乳動物繼承下來,所以自動擁有哺乳動物的
胎生,
哺乳,
恒溫,
強壯的心臟等等的東西
給你一個小的實例代碼:
import java.lang.reflect.Method;
import java.lang.reflect.InvocationTargetException;
public class test {
public static void main(String args[]) throws NoSuchMethodException,
IllegalAccessException, InvocationTargetException {
Foo foo = new Foo("這個一個Foo對象!");
Class clazz = foo.getClass();
Method m1 = clazz.getDeclaredMethod("outInfo");
Method m2 = clazz.getDeclaredMethod("setMsg", String.class);
Method m3 = clazz.getDeclaredMethod("getMsg");
m1.invoke(foo);
m2.invoke(foo, "重新設(shè)置msg信息!");
String msg = (String) m3.invoke(foo);
System.out.println(msg);
}
}
class Foo {
private String msg;
public Foo(String msg) {
this.msg = msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public String getMsg() {
return msg;
}
public void outInfo() {
System.out.println("這是測試Java反射的測試類");
}
}
對象是一個抽象概念,你可以說類是對象,也可以說實例是對象。類是代碼,實例是數(shù)據(jù),代碼是設(shè)計期的,數(shù)據(jù)是運行期的。而對象則貫穿整個設(shè)計階段和運行階段以及維護階段。
我們說面向?qū)ο螅∣bject-Oriented),而不是面向類(Class-Oriented),也不是面向?qū)嵗↖nstance-Oriented),那是因為對象作為抽象概念已經(jīng)包含了類和實例,而且對象不止是類和實例,還包含了他們的現(xiàn)實意義。
任何無視現(xiàn)實意義,隨意組裝一些類,這樣的代碼屬于面向類(Class-Oriented),但不是面向?qū)ο?。因此并不是任何用C++和Java寫出來的代碼就是面向?qū)ο螅撬械腃程序也不一定都不是面向?qū)ο蟆?/p>
struct
A
{
};
這是類,也是對象。
A
c;
c是A的實例,也是對象。
不知道你明白沒,就是對象的含義大一點,包括的多一點