A. java oop
OOP: Object Oriented Programming,面向對象的程序設計。所謂「對象」就是一個或一組數據以及處理這些數據的方法和過程的集合。面向對象的程序設計完全不同於傳統的面向過程程序設計,它大大地降低了軟體開發的難度,使編程就像搭積木一樣簡單,是當今電腦編程的一股勢不可擋的潮流。
面向對象編程(Object Oriented Programming,OOP,面向對象程序設計)是一種計算機編程架構。OOP 的一條基本原則是計算機程序是由單個能夠起到子程序作用的單元或對象組合而成。OOP 達到了軟體工程的三個主要目標:重用性、靈活性和擴展性。為了實現整體運算,每個對象都能夠接收信息、處理數據和向其它對象發送信息。OOP 主要有以下的概念和組件:
組件 - 數據和功能一起在運行著的計算機程序中形成的單元,組件在 OOP 計算機程序中是模塊和結構化的基礎。
抽象性 - 程序有能力忽略正在處理中信息的某些方面,即對信息主要方面關注的能力。
封裝 - 也叫做信息封裝:確保組件不會以不可預期的方式改變其它組件的內部狀態;只有在那些提供了內部狀態改變方法的組件中,才可以訪問其內部狀態。每類組件都提供了一個與其它組件聯系的介面,並規定了其它組件進行調用的方法。
多態性 - 組件的引用和類集會涉及到其它許多不同類型的組件,而且引用組件所產生的結果得依據實際調用的類型。
繼承性 - 允許在現存的組件基礎上創建子類組件,這統一並增強了多態性和封裝性。典型地來說就是用類來對組件進行分組,而且還可以定義新類為現存的類的擴展,這樣就可以將類組織成樹形或網狀結構,這體現了動作的通用性。
由於抽象性、封裝性、重用性以及便於使用等方面的原因,以組件為基礎的編程在腳本語言中已經變得特別流行。Python 和 Ruby 是最近才出現的語言,在開發時完全採用了 OOP 的思想,而流行的 Perl 腳本語言從版本5開始也慢慢地加入了新的面向對象的功能組件。用組件代替「現實」上的實體成為 JavaScript(ECMAScript)得以流行的原因,有論證表明對組件進行適當的組合就可以在英特網上代替 HTML 和 XML 的文檔對象模型(DOM)。
B. Java OOP 是什麼
oop的全稱是
object
oriented
programming,就是面向對象編程。
java語言所說的面相對象是相對於傳統編程語言(比如c語言)的面向過程編程思想而言的。
C. java面試提問:什麼是OOP
OOP: Object Oriented Programming,面向對象的程序設計。所謂"對象"在顯式支持面向對象的語言中,一般是指類在內存中裝載的實例,具有相關的成員變數和成員函數(也稱為:方法)。面向對象的程序設計完全不同於傳統的面向過程程序設計,它大大地降低了軟體開發的難度,使編程就像搭積木一樣簡單,是當今電腦編程的一股勢不可擋的潮流。
(3)javaoop編程擴展閱讀:
OOP 的優點:使人們的編程與實際的世界更加接近,所有的對象被賦予屬性和方法,結果編程就更加富有人性化。
· OOP 的也有缺點,就 C++ 而言,由於面向更高的邏輯抽象層,使得 C++ 在實現的時候,不得不做出性能上面的犧牲,有時候甚至是致命的 ( 所有對象的屬性都經過內置多重指針的間接引用是其性能損失的主要原因之一;不過,筆者的局限性在於未使用過 VC++ 外的面向對象語言,所以不是十分肯定,哈哈,有人笑出來了… )。
在計算機速度飛速發展的今天,你可能會說,一丁點的性能犧牲沒什麼大不了。是的,從面向對象的角度,使的編程的結構更加清晰完整,數據更加獨立和易於管理,性能的犧牲可以帶來這么多的好處,沒有理由不做穩賺的生意吧?
不過,在某些對速度要求極高特殊場合,例如你做的是電信的交換系統,每秒鍾有超過百萬的人同時進行電話交換,如果,每一個數據交換過程都是一個對象,那麼總的性能損失將是天文數字!!
D. 學java OOP和.NET OOP是一個概念嗎
OOP是一種程序設計理念,目前流行的語言中,java和C#都是很完善的支持這種編程方式的。
OOP是不分語言的,在任何一種語言設計中都可以存在,只要這些語言支持!
E. JAVAOOP方面
OOP就是面向對象編程 把所有東西都看成對象 比如 人 就是一個對象
對象有屬性 和方法
屬性 用來表示對象的狀態/數據 (現實對象的名詞/形容詞)
人 的屬性 姓名 年齡 性別 種族 身高 體重 等等。。
方法 用來表示對象的行為/提供的服務 (現實對象的動詞)
人 的方法 吃 喝 拉 撒 睡 說 走 等等
多態 同樣的方法 對不同的對象 有不同的處理
嬰兒 是 人 的子類 有 吃 方法 但 人 可以嚼 嬰兒 不能嚼
人 有 拿 方法 對錘子 和 雞蛋 的處理不同 一個用力大 一個用力小
介面 就是一組方法的定義
食物介面 必須有 補充能量 方法
交通工具介面 必須有 移動 方法
通訊工具介面 必須有 接收信息 發送信息 方法
給你推薦本書 Beginning Java Objects 我看這本書之前看的書大多講的都是java的如何編寫代碼 對概念講的不細 這本書專門講概念 思維方式
F. java的oop編程的多態怎麼理解
OOP就是面向對象,把所有的東西看做是一個對象,都是在操作那個對象!我們只要拿到那個對象就能拿到那個對象裡面的東西!靜態的多態就是只函數的重載,動態的多態就是方法的覆寫 JAVA中多態主要是由overload和override來表現,overload是指在一個類中的不同的方法擁有相同的方法名,不同的引數列(參數)或返回類型;override是指在繼承關系中子類中的方法具有和父類的方法一樣的返回類型和引數列(參數)
在JAVA中還有一種表現多態的形式,不過不是很常用,叫做向下轉型,也是發生在繼承關系中的,舉個例子:
class A{
...
}
class B extends A{
A b=new B();//向下轉型
...
}
class C extends A{
A c=new C();//向下轉型
...
}
G. Java oop編程題目
import java.util.Scanner;//定義介面
public interface animals {
String monkey = "猴子";
String elephant = "大象";
String peach = "桃子";
String banana = "香蕉";
}
//這是猴子的類
class monkey implements animals{
public void monkeyeat(){
Scanner sc = new Scanner(System.in);
System.out.println("請輸入你要給猴子吃的食物");
String food1 = sc.next();
if(food1.equals(peach)){
System.out.println("你給猴子吃的食物是"+peach+",請選擇要給它吃好的還是壞的");
String choose1 = sc.next();
if(choose1.equals("好的")){
System.out.println("猴子吃到了好的"+peach+",猴子笑哈哈");
}else if(choose1.equals("壞的")){
System.out.println("猴子吃到了壞的"+peach+",哭了起來");
}else{
System.out.println("您的輸入有誤,請輸入好的或者壞的");
}
}
else if(food1.equals(banana)){
System.out.println("你給猴子吃的食物是"+banana+",請選擇要給它吃好的還是壞的");
String choose2 = sc.next();
if(choose2.equals("好的")){
System.out.println("猴子吃到了好的"+banana+",猴子跳起來");
}else if(choose2.equals("壞的")){
System.out.println("猴子吃到了壞的"+banana+",扔掉"+banana);
}else{
System.out.println("您的輸入有誤,請輸入好的或者壞的");
}
}else{
System.out.println("您輸入的食物有誤,這里只有"+peach+"和"+banana+"兩種食物");
}
}
}
//這是大象的類
class elephant implements animals{
public void elephanteat(){
Scanner sc = new Scanner(System.in);
System.out.println("請輸入你要給大象吃的食物");
String food2 = sc.next();
if(food2.equals(peach)){
System.out.println("你給大象吃的食物是"+peach+",大象不吃桃子");
}else if(food2.equals(banana)){
System.out.println("你給大象吃的食物是"+banana+",請選擇要給它吃好的還是壞的");
String choose3 = sc.next();
if(choose3.equals("好的")){
System.out.println("大象吃到了好的"+banana+",大象翹鼻子");
}else if(choose3.equals("壞的")){
System.out.println("大象吃到了壞的"+banana+",吐了出來");
}else{
System.out.println("您的輸入有誤,請輸入好的或者壞的");
}
}else {
System.out.println("您輸入的食物有誤,這里只有"+peach+"和"+banana+"兩種食物");
}
}
}
//測試類
class Test{
public static void main(String []args){
monkey one = new monkey();
one.monkeyeat();
elephant two = new elephant();
two.elephanteat();
}
}