動手動腦篇之類與物件

2022-08-04 07:39:10 字數 1864 閱讀 9882

動手動腦篇之類與物件

答:foo obj1=new foo()在此處呼叫的時候沒有引數

答:執行類成員定義時指定的預設值或類的初始化塊,到底執行哪乙個要看哪乙個「排在前面」。

執行類的建構函式。類的初始化塊不接收任何的引數,而且只要一建立類的物件,它們就會被執行。因此,適合於封裝那些「物件建立時必須執行的**」。

答:結果是100  300

答:執行類成員定義時指定的預設值或類的初始化塊,到底執行哪乙個要看哪乙個「排在前面」。

執行類的建構函式 ,當有多個建構函式時,要通過引數區分。

類的初始化塊不接收任何的引數,而且只要一建立類的物件,它們就會被執行。因此,適合於封裝那些「物件建立時必須執行的**」。

class grandfather

static

system.out.println("grandfather的靜態初始化塊");

class father extends grandfather

static

system.out.println("father的靜態初始化塊");

class son extends father

static

system.out.println("son的靜態初始化塊");

答:靜態初始化塊只執行一次。建立子型別的物件時,也會導致父型別的靜態初始化塊的執行。

class example

public static void display()

system.out.println("類的方法");

public void displayone()

system.out.println("物件的方法");

public static void main(string args) 

example.display();

example e=new example();

e.displayone();   

e.display();

答: 因為它們呼叫的interger

類的方法不同,所以結果不同。

package jxlpacakge;

public class hello

public static void main(string args) 

system.out.println("hello world!");

修改後

public class test

private int id;

private string name;

private static long count;

private final static threadlocal tl=new threadlocal();

public test()

super();

count++;

tl.set(count);

public long getcount()

return (long)tl.get();

public static void main(string args) {

for (int i = 0; i 

test t=new test();

system.out.println(t.getcount());

動手動腦總結

本次動手動腦結論如下。為什麼要用多型。是因為派生類的功能可以被基類的方法或引用變數所呼叫,這叫向後相容,可以提高可擴充性和可維護性。關於物件導向為什麼要有介面的問題。介面是規範,規定某個實現類裡必須有那些方法,只要事先定義好介面,當大家一起合作的時候就不用特別麻煩的互動,而是每個人寫好自己的介面實現...

動手動腦2

1.編寫乙個方法,使用以上演算法生成指定數目 比如1000個 的隨機整數 a.利用產生隨機數的公式x n 1 axn c mod m計算出所需要的隨機數,利用for迴圈產生每二十個一行的隨機數 b.源 package suijshu10001 public class test public sta...

動手動腦1

package test public class test class foo 因為test類構造了class foo 方法導致系統不再提供預設無引數的構造方法,然而此類並沒有符合class foo的構造方法應該有引數的foo obj1 new foo x x是乙個整數。2.package tes...