您好,登錄后才能下訂單哦!
類的基本概念
關于public class,這個public是為了方便能被外部的包導入引用。
Point p = new Poiont();
+ 程序執行的以后父類構造方法會優先于子類執行
public class A extends B{
}class B {
public B(String name){
System.out.println("this constructor is invoked");
}
其中A沒有構造函數,實例化后編譯時A會執行B的帶參數構造函數,編譯報錯。
關于super,super()。
package Temp;
class A {
int x = 6;
private int y = 2;public A(int a) { x = a; } int getz() { int z; z = x / y; return z; } void show() { System.out.println("x=" + x); System.out.println("y=" + y); System.out.println("z=" + getz()); }
}
class B extends A {
int x = 3, y = 5, z;public B(int a) { super(a); } int getz() { z = x + y; return z; }
}
public class Temp {
public static void main(String[] args) {
A num1 = new A(10);
B num2 = new B(9);
num1.show();
num2.show();
}
}
重寫是指子類重新重新覆蓋父類相同參數簽名的方法,重寫代碼的邏輯塊。
重載是指方法名相同但參數類型、個數、順序不同,與返回值無關;調用重載方法,我們通過重載方法參數但匹配來動態綁定方法。
主函數如下:
import javax.swing.JFrame;
import paint.MyCanvas;
public class HelloWorld {
JFrame jFrame;
public static void main(String[] args) {
// TODO 自動生成的方法存根
HelloWorld paintMain=new HelloWorld();
paintMain.initView();
}public void initView() { jFrame =new JFrame(); jFrame.setBounds(100, 100, 500, 500); jFrame.setTitle("畫圖測試"); jFrame.setLayout(null); MyCanvas myCanvas=new MyCanvas();//畫布 myCanvas.setBounds(0,0, 500, 500); jFrame.add(myCanvas); jFrame.setVisible(true); }
}
MyCanvas類如下:
package paint;
import java.awt.Canvas;
import java.awt.Graphics;public class MyCanvas extends Canvas{
@ Override
public void paint(Graphics g) {
// TODO 自動生成的方法存根
super.paint(g);//直接輸入paint提示出來函數;
char[] a= {'顯','示','文','字'};
g.drawChars(a, 0, 4, 50, 150);// data數組,offset為數據初始偏移量,length為要繪制的字符數,x,y文本基線的xy坐標,
g.drawString("字符測試01", 20, 20);// 注意,字符串型的x,y在字符中,而不是左上頂點;}
}
public abstract void drawLine(int x1,int y1,int x2,int y2)
在此圖形上下文的坐標系中,使用當前顏色在點 (x1, y1) 和 (x2, y2) 之間畫一條線
參數:
x1 - 第一個點的 x 坐標。
y1 - 第一個點的 y 坐標。
x2 - 第二個點的 x 坐標。
y2 - 第二個點的 y 坐標。
public void drawRect(int x,int y, int width, int height)
繪制指定矩形的邊框。矩形的左邊緣和右邊緣分別位于 x 和 x + width。上邊緣和下邊緣分別位于 y 和 y + height。使用圖形上下文的當前顏色繪制該矩形。
參數:
x - 要繪制矩形的 x 坐標。
y - 要繪制矩形的 y 坐標。
width - 要繪制矩形的寬度。
height - 要繪制矩形的高度。
public abstract void drawOval(int x, int y,int width, int height)
繪制橢圓的邊框。得到一個圓或橢圓,它剛好能放入由 x、y、width 和 height 參數指定的矩形中。
橢圓覆蓋區域的寬度為 width + 1 像素,高度為 height + 1 像素。
參數:
x - 要繪制橢圓的左上角的 x 坐標。
y - 要繪制橢圓的左上角的 y 坐標。
width - 要繪制橢圓的寬度。
height - 要繪制橢圓的高度。
public abstract void setColor(Color c)
將此圖形上下文的當前顏色設置為指定顏色。使用此圖形上下文的所有后續圖形操作均使用這個指定的顏色。
參數:
c - 新的呈現顏色。
public abstract void drawRoundRect(int x, int y,int width,int height,int arcWidth,int arcHeight)
用此圖形上下文的當前顏色繪制圓角矩形的邊框。矩形的左邊緣和右邊緣分別位于 x 和 x + width。矩形的上邊緣和下邊緣分別位于 y 和 y + height。
參數:
x - 要繪制矩形的 x 坐標。
y - 要繪制矩形的 y 坐標。
width - 要繪制矩形的寬度。
height - 要繪制矩形的高度。
arcWidth - 4 個角弧度的水平直徑。
arcHeight - 4 個角弧度的垂直直徑。
看看它的參數:
fillOval(int x,int y ,int width ,int height)
前兩個X 和 Y是矩形框的左上角的坐標,width和height是寬和高。
int px[] = { 210, 220, 270, 250, 240 }; int py[] = { 220, 250, 300, 270, 220 }; g.drawPolygon(px, py, px.length);
g.drawString(String str, int x,int y)
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。