Java是一種面向對象的編程語言,它和C語言一樣,都支持函數。但Java中的函數叫做方法,而且方法必須定義在類中。下面我們通過一個例子,來比較Java的類和C語言的函數。
//Java類 public class Person { private String name; public Person(String n) { name = n; } public void sayHello() { System.out.println("Hello, my name is " + name); } } //C語言函數 void sayHello(char* name) { printf("Hello, my name is %s", name); }
首先看Java類的定義,我們定義了一個名為Person的類,它有一個私有的字符串類型的實例變量name和兩個公有的方法(也就是函數)——構造方法和sayHello方法。構造方法是類中的一個特殊函數,在創建對象時被調用,用于對對象進行初始化。sayHello方法用于輸出一個問候語,其中包含了name的值。
而在C語言中,我們定義了一個函數sayHello,它的參數是一個指向字符型數組的指針name,函數體內使用printf函數輸出問候語,也包含了name的值。
可以發現,雖然Java類和C函數的語法有所不同,但它們的功能是相似的。值得注意的是,在Java中調用類的方法時,需要先創建類的對象,然后使用該對象來調用方法:
Person p = new Person("Tom"); p.sayHello();
而在C語言中,直接調用函數即可:
char* name = "Tom"; sayHello(name);
在日常編程中,我們可以根據需求選擇Java類和C函數來實現程序的功能,也可以將它們結合起來使用,充分利用它們的優勢。
上一篇java的知識和體系