자바 기초 -의 이해에 대한 이야기 객체 지향

 

서문

이 문서에서는 주로 당신이 더 객체 지향 프로그래밍을 이해하는 데 도움이되는 핵심 지식을 다음과; 그림 삽입 설명 여기

두 객체 지향 프로세스를 지향 VS

 

2.1 절차 지향 프로그래밍

 

프로세스 지향 프로그래밍 과정 지향 프로그래밍 될 것을 의미한다 (프로세스 지향 프로그래밍) , 무엇을?, 프로세스가 무엇인가?

그림 삽입 설명 여기

 

프로세스 지향 프로그래밍은 실제로 코드의 실행 주위에 구현되어 , 우리가 지금은 씻어 어제의 옷을 세탁하지 않은 비유 그리려 (농담이 내가 순수한 영광을 사용, 확실히 내가 아니다!), 나는 다음 단계를 수행합니다 :

의류 버킷에 붓고, 버킷에 물을 부어, 네이은 30 분 동안 향료를 세탁 세제 대기 추가 브러시 스크러빙 .....

 

상태 코드입니다 :

1이 야생 방법 --- 장착 드레스입니다 // 
containClothes () .......
----- // 2이 야생 방법 부어
pourWater을 () ......... .
// 3이 ------- 액체 세제 야생 접근 부어있다
pourWashingLiquid () ... ...
// 4이 ----- 야생 방식으로 닦고있다 브러시
washClothes을 () .............

좋은 문제가 아, 나는 이러한 단계를 수행 밝혀졌다 옷을 세척 브러시 기능을 닦고 어떤 기성 세대에 감탄

그림 삽입 설명 여기

 

2.2 객체 지향 프로그래밍

OOP (객체 지향 프로그래밍, OOP) 객체 지향 프로그래밍 것을 의미 , 약간 약간 ......이가 말도하지, 그래 아 문구가 말도, 우리는 객체 무엇의 핵심 개념을 이해할 필요가?

그림 삽입 설명 여기

 

对象这个名称其实很普通啊,比如你家里人经常会说,孩子啊,最近有对象了,奶奶等等着报孙子里,...........,这是真的么?难道java中面向对象编程就是指生活中相处的对象?那我编写个女孩子对象,是不是就有对象啦,呵呵............,你想的真美好(跟代码生孩子去吧!!!);

 

面向对象中的对象其实就是面向事物,《Think in java》中有一句话叫啥来着?万物皆对象...额,一切皆对象...额,没错啥都是对象;好吧如果你是初学者去面试,就别吹这就话了,你想跟老程序抢饭碗啊!!!

 

그림 삽입 설명 여기

面向对象编程我们已经理解了,就是类似根据生活中中的事物编程,嗯?回到刚刚洗衣服的话题上,生活中的事物编程.......聪明如我这样的孩子已经想到了,本宝怎么会自己洗衣服呢!!!太low了,我要叫一个对象来给我洗衣服,我就不叫其他人帮我洗了,会遭天妒,还是叫最普通的把,比如洗衣机这个对象;

 

我把衣服倒进洗衣机; 我把洗衣液倒进洗衣机; 开启启动程序,洗衣机麻烦你洗洗衣服啊哈哈;

可以看见我们简化了一些步骤吖,不用拿桶了,不用自己洗衣服;转换成代码就是这样

 

// 1 知识追寻者这个对象的方法---倒衣服
zxzxz.pourClothes()........
// 2 知识追寻者这个对象的方法---倒洗衣液
zszxz.pourWashingLiquid()............
// 3 洗衣机这个对象的方法-----洗衣服
WashingMachine.washClothes().............

面向对象中的对象在java编程中就是Object,每个对象都有自己的类型也就是Class,你可以这样理解,一个类型有多个对象实例(instance),比如,洗衣机有小天鹅洗衣机对象,海尔洗衣机对象;

 

三 抽象

面向对象的本质其实就是抽象;啥是抽象啊,好深奥的感觉,膜拜当年的大佬用了这么高大尚的术语;抽象我们通俗的理解就是将具体的功能和行为属性抽象出来看待成一个实体;说了这么多,你可能还是一脸懵逼........

 

그림 삽입 설명 여기

 

就以洗衣机为例子,我现在要将洗衣机有容纳东西的功能,有排水的功能,有洗衣服的功能......好了这么多功能和属性我将它们都抽象出来形成一个实体;那么代码就是如下

public class WashingMaching {

public void contain(Object obj){
  // do contain
}

public void drainWater(){
  // do drain water
}

public void washingClothes(Clothes clothes){
 
}

}

四 创建对象

 

说了那么多关于对象的事情,但是永恒的主题你要告诉我对象是怎么创建的吧, 看如下代码,创建对象是通过 new 这个关键字创建;我们创建了一个对象叫做 wm,也就是实例,它属于 WashingMaching 这个类;执行drainWater()这个方法,表示实例wm执行了其成员方法;

 

// 객체 생성 
) WashingMaching의 WM = 새로운 WashingMaching을 (;
// 메소드 호출
wm.drainWater ();

객체 지향의 다섯 세 가지 원칙

 

 

5.1 패키지

사실, 패키지 외부의 간섭으로부터 너무 무료, 숨겨진 개체의 동작 특성이다 , 나는 차가운 아이였다, 더러운의 의견을 사용하지 않는 것 같아요! ! ! 나는 고유의 마법 능력을 당신은 절대 모릅니다; 패키지 숨겨진 목적은 다른 개체에 의해 손상되는 것을 방지하는 것입니다 단지 사람에서 사람에 따라 얻을, 개인 정보 보호를위한 공간이 있어야합니다, 당신은 노출증은하지 않는다? ? ?

그림 삽입 설명 여기

 

5.2 상속

 

상속은 서브 클래스가 부모 클래스, 하위 클래스는 상위 클래스의 모든 특성을 갖 상속이다 농담을 말하고, 어떤 젊은 사람이 거리를 방황했다, 어느 날 갑자기 군대가 조금 뚱뚱한 남자, 그를 둘러싸는 황제 운전 것을 그에게 말했다 당신이 빠른 다시 황제의 궁전, 황제의 유일한 아들, 나와 함께 왕위에 올라 지금 가업을 상속, 당신을 축소! ! ! 자바의 단일 상속은 모든 개체가 부모 클래스는 객체이며, 새로운 방법은 객체가 연속적으로 기능을 확장 할 수 있습니다 추가 상위 클래스의 메소드를 오버라이드 (override)하는 서브 클래스 별 특징 구현 될 수 있으며, 사용이 키워드가 상속을 나타냅니다 확장;

그림 삽입 설명 여기

 

이상 5.3 상태

 

본질적으로, 작은 물방울 슬, 비, 안개 : 여기 간단한 밤나무이다 다형성 객체는 객체의 상태는 서브 클래스와 수퍼 클래스 간의 상호 교환 될 수있는 상태의 복수의 쇼를 나타낼 수 물, 우리는 그들이 물을 상속 믿고, 물방울 물로 변환 할 수 있습니다,이 상승 전환 (즉, 부모 닫기), 두 상태의 성능에 이제 작은 물방울이고, 하나는 물 상태이며, 하나는 국가의 작은 물방울, 당신은 아침 이슬에 물을 변환 할 경우, 변환은 (하위 클래스에 가까운) 아래이지만, 구조 조정 위험에서, 아침 이슬 물은 확실히이 상태 그것은 단지 아침 이슬을 할 것, 물인가? 분명하지, 물이도 등 빗방울, 안개로 변환 할 수 있습니다 ..... 보통 풀이 죽은, 유형을 결정하기 위해 수행 심판 instanceof를 키워드를 사용 할 수있다;

그림 삽입 설명 여기

 

 

 

 

추천

출처www.cnblogs.com/zszxz/p/12057962.html