java基礎部分的簡單應用

来源:http://www.cnblogs.com/jinmoon/archive/2017/12/07/8000866.html
-Advertisement-
Play Games

牛刀小試,MMP;嘿嘿,如有轉載,請聲明地址http://www.cnblogs.com/jinmoon/; 圖形類,點類,三角形類,汽車類,介面;運用繼承,抽象類,介面,多態;已知點類三點,輸出三點;三角形類周長,面積;汽車標誌; public class Test { public static ...


牛刀小試,MMP;嘿嘿,如有轉載,請聲明地址http://www.cnblogs.com/jinmoon/;

圖形類,點類,三角形類,汽車類,介面;運用繼承,抽象類,介面,多態;已知點類三點,輸出三點;三角形類周長,面積;汽車標誌;

public class Test {
public static void main(String[] args) {
SS p,w,e,r,t;
Point P1=new Point("hong",1, 2);
Point P2=new Point("huang",15, 4);
Point P3=new Point("nan",21, 12);
San san=new San("hei", P1, P2, P3);
Car car=new Car("baoma");
p=P1;w=P2;e=P3;r=san;t=car;
Test kk=new Test();
kk.showAnny(p);
kk.showAnny(w);
kk.showAnny(e);
kk.showAnny(r);
kk.showAnny(t);
}
public void showAnny(SS p)
{
p.show2();
}

}
class Point extends Shape implements SS //點類
{
double x,y;
public Point( double x,double y)
{
this.x=x;
this.y=y;
}

public Point(String color, double x,double y)
{
super(color);
this.x=x;
this.y=y;
}
public double getX()
{
return x;
}
public double getY()
{
return y;
}
public String show()
{
return "("+x+","+y+")";
}
public double zhouChang()
{
return 0;
}
public void show2()
{
System.out.print( super.toString()+" "+"Point;"+"("+x+","+y+")"+"\n周長是:"+zhouChang());
}
}

class San extends Shape implements SS //三角形類
{
double q,s,h;
double a,b,c;
Point P1;
Point P2;
Point P3;
public San(String color,Point p1,Point p2,Point p3)
{
super(color);
this.P1=p1;
this.P2=p2;
this.P3=p3;
}
public double getA()
{
a=Math.round(Math.sqrt((P1.getX()-P2.getX())*(P1.getX()-P2.getX())+(P1.getY()-P2.getY())*(P1.getY()-P2.getY())));
return a;
}
public double getB()
{
b=Math.round(Math.sqrt((P1.x-P3.x)*(P1.x-P3.x)+(P1.y-P3.y)*(P1.y-P3.y)));
return b;
}
public double getC()
{
c=Math.round(Math.sqrt((P3.x-P2.x)*(P3.x-P2.x)+(P3.y-P2.y)*(P3.y-P2.y)));
return c;
}
public double getS()
{

q=(a+b+c)/2;
s=Math.round(Math.sqrt(q*(q-a)*(q-b)*(q-c)));
return s;
}
public double mianJi()
{
getA();
getB();
getC();
if(a+b>c&&a-b<c)
{
s=getS();
return s;
}
else
{
return 0;
}
}
public double zhouChang()
{
h=getA()+getB()+getC();
return h;
}
public void show2()
{
System.out.print( super.toString()+"\nA=:"+P1.show()+"\nB:="+P2.show()+"\nC;="+P3.show()+"\n周長是:"+zhouChang()+"\n面積是:"+mianJi());
}

}
abstract class Shape //抽象的圖形類
{
private String color;
public Shape(){}
public Shape(String color)
{
this.color=color;
}
public abstract double zhouChang();
public String toString()
{
return "\nColor:"+color;
}
}
interface SS //介面,抽象的一個輸出方法
{
void show2();
}
class Car implements SS //汽車類
{
String logal;
public Car(String logal)
{
this.logal=logal;
}
public void show2()
{
System.out.print("\nlogal是 "+logal);
}
}


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • Ajax 是一種在無需重新載入整個網頁的情況下,能夠更新部分網頁的技術。 很久沒有動過ajax了,趁此機會複習一下,寫一個簡單的例子 一.項目結構: 二.需要的jar包 三.具體代碼: 1.web.xml 2.Action UserLoginAction.java AjaxAction.java 3 ...
  • 一. 1.創建列表 創建列表和創建普通變數一樣,用中括弧括起一堆數據,數據之間用逗號隔開。當然也可以創建一個魚龍混雜的列表。如果不知道列表需要什麼元素,可以先創建一個空列表 2.向列表添加元素 —1append() >>>number = [1,2,3,4,5] >>>number.append(6 ...
  • 1.等待終止的子進程(僵死進程): 如果一個子進程在父進程之前結束,內核會把子進程設置為一個特殊的狀態,處於這種狀態的進程稱為僵死進程 當父進程獲取了子進程的信息後,子進程才會消失。 pid_t wait(int *status); 父進程調用這個方法會被阻塞住,如果子進程終止的時候,此方法會調用並 ...
  • 補充聊天項目功能,做如下需求分析: 梳理項目開發所需的必要Java知識基礎 GUI將使用更快速的swt實現 SWT(Standard Widget Toolkit) Standard Widget Toolkit是一個開源的GUI編程框架,與AWT/Swing有相似的用處,著名的開源IDE-ecli ...
  • ArrayList和LinkedList是常用的兩種存儲結構,那麼它們有哪些區別呢?這裡簡單給出一部分。 1、ArrayList和LinkedList可想從名字分析,它們一個是Array(動態數組)的數據結構,一個是Link(鏈表)的數據結構,此外,它們兩個都是對List介面的實現。 前者是數組隊列 ...
  • CURL是一個非常強大的開源庫,支持很多協議,包括HTTP、FTP、TELNET等,我們使用它來發送HTTP請求。它給我 們帶來的好處是可以通過靈活的選項設置不同的HTTP協議參數,並且支持HTTPS。CURL可以根據URL首碼是“HTTP” 還是“HTTPS”自動選擇是否加密發送內容。 使用CUR ...
  • ODBC DataSource添加Access資料庫 Java JDBC訪問Access資料庫 以下為封裝好的DBApplication類 ...
  • foreach遍歷查詢mysql中的tinyint欄位時一直查都是各種0,false,null 發現原來是實體類中的變數名和mysql中的列名不一樣出的bug 所以說列名和實體類中的相關變數名是要保持一致的。 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...