æä¸ç¥éæä¹åä½ è§£éï¼æ以å¨ç½ä¸æ¾äºç¹èµæï¼å¸æå¯ä»¥å¸®å©ä½ ã
æé æ¹æ³è¦ä¸ç±»åç¸åï¼æ è¿åç±»åï¼å¨ç±»åå§åçæ¶åè°ç¨ã
æ¹æ³æ好ä¸ç±»åä¸åï¼å¯¹è±¡è°ç¨ï¼éææ¹æ³å¯ç¨ç±»å.æ¹æ³ï¼ï¼.
åè½åä½ç¨çä¸å
æé å¨æ¯ä¸ºäºå建ä¸ä¸ªç±»çå®ä¾ãè¿ä¸ªè¿ç¨ä¹å¯ä»¥å¨å建ä¸ä¸ªå¯¹è±¡çæ¶åç¨å°ï¼Platypus p1 = new Platypus();
ç¸åï¼æ¹æ³çä½ç¨æ¯ä¸ºäºæ§è¡java代ç ã
修饰符ï¼è¿åå¼åå½åçä¸å
æé å¨åæ¹æ³å¨ä¸é¢ä¸ä¸ªæ¹ä¾¿çåºå«ï¼ä¿®é¥°ç¬¦ï¼è¿åå¼ï¼å½åãåæ¹æ³ä¸æ ·ï¼æé å¨å¯ä»¥æä»»ä½è®¿é®çä¿®é¥°ï¼ public, protected, privateæè
没æ修饰ï¼é常被package å friendlyè°ç¨ï¼. ä¸åäºæ¹æ³çæ¯ï¼æé å¨ä¸è½æ以ä¸é访é®æ§è´¨çä¿®é¥°ï¼ abstract, final, native, static, æè
synchronizedã
è¿åç±»åä¹æ¯é常éè¦çãæ¹æ³è½è¿åä»»ä½ç±»åçå¼æè
æ è¿åå¼ï¼voidï¼ï¼æé å¨æ²¡æè¿åå¼ï¼ä¹ä¸éè¦voidã
æåï¼è°è°ä¸¤è
çå½åãæé å¨ä½¿ç¨åç±»ç¸åçååï¼èæ¹æ³åä¸åãæç
§ä¹ æ¯ï¼æ¹æ³é常ç¨å°ååæ¯å¼å§ï¼èæé å¨é常ç¨å¤§ååæ¯å¼å§ãæé å¨é常æ¯ä¸ä¸ªåè¯ï¼å 为å®åç±»åç¸åï¼èæ¹æ³é常æ´æ¥è¿å¨è¯ï¼å 为å®è¯´æä¸ä¸ªæä½ã
"this"çç¨æ³
æé å¨åæ¹æ³ä½¿ç¨å
³é®åthisæå¾å¤§çåºå«ãæ¹æ³å¼ç¨thisæåæ£å¨æ§è¡æ¹æ³çç±»çå®ä¾ãéææ¹æ³ä¸è½ä½¿ç¨thiså
³é®åï¼å 为éææ¹æ³ä¸å±äºç±»çå®ä¾ï¼æ以thisä¹å°±æ²¡æä»ä¹ä¸è¥¿å»æåãæé å¨çthisæååä¸ä¸ªç±»ä¸ï¼ä¸ååæ°å表çå¦å¤ä¸ä¸ªæé å¨ï¼æ们ççä¸é¢ç代ç ï¼
public class Platypus {
String name;
Platypus(String input) {
name = input;
}
Platypus() {
this("John/Mary Doe");
}
public static void main(String args[]) {
Platypus p1 = new Platypus("digger");
Platypus p2 = new Platypus();
}
}
å¨ä¸é¢ç代ç ä¸ï¼æ2个ä¸ååæ°å表çæé å¨ã第ä¸ä¸ªæé å¨ï¼ç»ç±»çæånameèµå¼ï¼ç¬¬äºä¸ªæé å¨ï¼è°ç¨ç¬¬ä¸ä¸ªæé å¨ï¼ç»æååénameä¸ä¸ªåå§å¼ "John/Mary Doe".
å¨æé å¨ä¸ï¼å¦æè¦ä½¿ç¨å
³é®åthis,é£ä¹ï¼å¿
é¡»æ¾å¨ç¬¬ä¸è¡ï¼å¦æä¸è¿æ ·ï¼å°å¯¼è´ä¸ä¸ªç¼è¯é误ã
"super"çç¨æ³
æé å¨åæ¹æ³ï¼é½ç¨å
³é®åsuperæåè¶
ç±»ï¼ä½æ¯ç¨çæ¹æ³ä¸ä¸æ ·ãæ¹æ³ç¨è¿ä¸ªå
³é®åå»æ§è¡è¢«éè½½çè¶
ç±»ä¸çæ¹æ³ãçä¸é¢çä¾åï¼
class Mammal {
void getBirthInfo() {
System.out.println("born alive.");
}
}
class Platypus extends Mammal {
void getBirthInfo() {
System.out.println("hatch from eggs");
System.out.print("a mammal normally is ");
super.getBirthInfo();
}
}
å¨ä¸é¢çä¾åä¸ï¼ä½¿ç¨super.getBirthInfo()å»è°ç¨è¶
ç±»Mammalä¸è¢«éè½½çæ¹æ³ã
æé å¨ä½¿ç¨superå»è°ç¨è¶
ç±»ä¸çæé å¨ãèä¸è¿è¡ä»£ç å¿
é¡»æ¾å¨ç¬¬ä¸è¡ï¼å¦åç¼è¯å°åºéãçä¸é¢çä¾åï¼
public class SuperClassDemo {
SuperClassDemo() {}
}
class Child extends SuperClassDemo {
Child() {
super();
}
}
å¨ä¸é¢è¿ä¸ªæ²¡æä»ä¹å®é
æä¹çä¾åä¸ï¼æé å¨ Child()å
å«äº super,å®çä½ç¨å°±æ¯å°è¶
ç±»ä¸çæé å¨SuperClassDemoå®ä¾åï¼å¹¶å å° Childç±»ä¸ã
ç¼è¯å¨èªå¨å å
¥ä»£ç
ç¼è¯å¨èªå¨å å
¥ä»£ç å°æé å¨ï¼å¯¹äºè¿ä¸ªï¼javaç¨åºåæ°æå¯è½æ¯è¾æ··æ·ãå½æ们åä¸ä¸ªæ²¡ææé å¨çç±»ï¼ç¼è¯çæ¶åï¼ç¼è¯å¨ä¼èªå¨å ä¸ä¸ä¸ªä¸å¸¦åæ°çæé å¨ï¼ä¾å¦ï¼public class Example {}
ç¼è¯åå°å¦ä¸ä»£ç ï¼
public class Example {
Example() {}
}
å¨æé å¨ç第ä¸è¡ï¼æ²¡æ使ç¨superï¼é£ä¹ç¼è¯å¨ä¹ä¼èªå¨å ä¸ï¼ä¾å¦ï¼
public class TestConstructors {
TestConstructors() {}
}
ç¼è¯å¨ä¼å ä¸ä»£ç ï¼å¦ä¸ï¼
public class TestConstructors {
TestConstructors() {
super;
}
}
ä»ç»æ³ä¸ä¸ï¼å°±ç¥éä¸é¢ç代ç
public class Example {}
ç»è¿ä¼è¢«ç¼è¯å¨å 代ç å½¢å¦ï¼
public class Example {
Example() {
super;
}
}
继æ¿
æé å¨æ¯ä¸è½è¢«ç»§æ¿çãåç±»å¯ä»¥ç»§æ¿è¶
ç±»çä»»ä½æ¹æ³ãççä¸é¢ç代ç ï¼
public class Example {
public void sayHi {
system.out.println("Hi");
}
Example() {}
}
public class SubClass extends Example {
}
ç±» SubClass èªå¨ç»§æ¿äºç¶ç±»ä¸çsayHiæ¹æ³ï¼ä½æ¯ï¼ç¶ç±»ä¸çæé å¨ Example()å´ä¸è½è¢«ç»§æ¿ã
æ»ç»
主é¢
æé å¨
æ¹æ³
åè½
建ç«ä¸ä¸ªç±»çå®ä¾
javaåè½è¯å¥
修饰
ä¸è½ç¨bstract, final, native, static,
or synchronized
è½
è¿åç±»å
没æè¿åå¼ï¼æ²¡ævoid
æè¿åå¼ï¼æè
void
å½å
åç±»åç¸åï¼é常为åè¯ï¼å¤§åå¼å¤´
é常代表ä¸ä¸ªå¨è¯çææï¼å°åå¼å¤´
this
æååä¸ä¸ªç±»ä¸å¦å¤ä¸ä¸ªæé å¨ï¼å¨ç¬¬ä¸è¡
æåå½åç±»çä¸ä¸ªå®ä¾ï¼ä¸è½ç¨äºéææ¹æ³
super
è°ç¨ç¶ç±»çæé å¨ï¼å¨ç¬¬ä¸è¡
è°ç¨ç¶ç±»ä¸ä¸ä¸ªéè½½çæ¹æ³
继æ¿
æé å¨ä¸è½è¢«ç»§æ¿
æ¹æ³å¯ä»¥è¢«ç»§æ¿
ç¼è¯å¨èªå¨å å
¥ä¸ä¸ªç¼ºççæé å¨
èªå¨å å
¥ï¼å¦æ没æï¼
ä¸æ¯æ
ç¼è¯å¨èªå¨å å
¥ä¸ä¸ªç¼ºççè°ç¨å°è¶
ç±»çæé å¨
èªå¨å å
¥ï¼å¦æ没æï¼
ä¸æ¯æ
æé æ¹æ³ï¼å¯ä»¥ç解为å¨å¯¹è±¡ä½¿ç¨ä¹åå¿
é¡»è°ç¨çæ¹æ³ï¼è该类å½ä¸çå
¶ä»æ¹æ³å没è¿ä¸ªå¿
è¦
æ以å¨å建对象çæ¶åï¼ä¸ä½è¦åé
å
åï¼è¿è¦è°ç¨æé æ¹æ³
ç»å¾®çå·®å«
æé æ¹æ³å¿
须没æè¿åå¼ï¼å
¶ä»æ¹æ³å¿
é¡»æè¿åå¼
æé æ¹æ³æé»è®¤æé æ¹æ³ï¼èå
¶ä»æ¹æ³æ²¡æ
java ç±»å½ä¸æ¹æ³æè¿åå¼ï¼å¹¶ä¸ä¹ æ¯æ¹æ³åå¼å¤´å°åï¼
æé æ¹æ³æ²¡æè¿åå¼ï¼èå
¶åæ³ç¹æ®æ¯
public/private + ç±»å +ï¼ï¼+{}ãæ¯åºå®ç
ä¾å¦
class A{
private int id;
private String name;
public A(){}
public A(int id,String name){
this.id = id;
this.name = name;
}
}
第ä¸ä¸ª public A(){}æ¯ç¼ºççæé æ¹æ³ï¼ç¬¬äºæ¯éè½½Fullçæé æ¹æ³ã
温馨提示:答案为网友推荐,仅供参考