JavaÖеÄinstanceof¹Ø¼ü×Ö
instanceofÊÇJavaµÄÒ»¸ö¶þÔª²Ù×÷·û£¬ºÍ==£¬>£¬<ÊÇͬһÀà¶«¶«¡£ÓÉÓÚËüÊÇÓÉ×Öĸ×é³ÉµÄ£¬ËùÒÔÒ²ÊÇJavaµÄ±£Áô¹Ø¼ü×Ö¡£ËüµÄ×÷ÓÃÊDzâÊÔËü×ó±ßµÄ¶ÔÏóÊÇ·ñÊÇËüÓұߵÄÀàµÄʵÀý£¬·µ»ØbooleanÀàÐ͵ÄÊý¾Ý¡£¾Ù¸öÀý×Ó£º
¡¡¡¡String s = "I AM an Object!";
¡¡¡¡boolean isObject = s instanceof Object;
¡¡¡¡ÎÒÃÇÉùÃ÷ÁËÒ»¸öString¶ÔÏóÒýÓã¬Ö¸ÏòÒ»¸öString¶ÔÏó£¬È»ºóÓÃinstancofÀ´²âÊÔËüËùÖ¸ÏòµÄ¶ÔÏóÊÇ·ñÊÇObjectÀàµÄÒ»¸öʵÀý£¬ÏÔÈ»£¬ÕâÊÇÕæµÄ£¬ËùÒÔ·µ»Øtrue£¬Ò²¾ÍÊÇisObjectµÄֵΪTrue¡£
¡¡¡¡instanceofÓÐһЩÓô¦¡£±ÈÈçÎÒÃÇдÁËÒ»¸ö´¦ÀíÕ˵¥µÄϵͳ£¬ÆäÖÐÓÐÕâÑùÈý¸öÀࣺ
¡¡¡¡public class Bill {//Ê¡ÂÔϸ½Ú}
¡¡¡¡public class PhoneBill extends Bill {//Ê¡ÂÔϸ½Ú}
¡¡¡¡public class GasBill extends Bill {//Ê¡ÂÔϸ½Ú}
¡¡¡¡ÔÚ´¦Àí³ÌÐòÀïÓÐÒ»¸ö·½·¨£¬½ÓÊÜÒ»¸öBillÀàÐ͵ĶÔÏ󣬼ÆËã½ð¶î¡£¼ÙÉèÁ½ÖÖÕ˵¥¼ÆËã·½·¨²»Í¬£¬¶ø´«ÈëµÄBill¶ÔÏó¿ÉÄÜÊÇÁ½ÖÖÖеÄÈκÎÒ»ÖÖ£¬ËùÒÔÒªÓÃinstanceofÀ´Åжϣº
¡¡¡¡public double calculate(Bill bill) {
¡¡¡¡if (bill instanceof PhoneBill) {
¡¡¡¡//¼ÆËãµç»°Õ˵¥
¡¡¡¡}
¡¡¡¡if (bill instanceof GasBill) {
¡¡¡¡//¼ÆËãÈ¼ÆøÕ˵¥
¡¡¡¡}
¡¡¡¡...
¡¡¡¡}
¡¡¡¡ÕâÑù¾Í¿ÉÒÔÓÃÒ»¸ö·½·¨´¦ÀíÁ½ÖÖ×ÓÀà¡£
¡¡¡¡È»¶ø£¬ÕâÖÖ×ö·¨Í¨³£±»ÈÏΪÊÇûÓкúÃÀûÓÃÃæÏò¶ÔÏóÖеĶà̬ÐÔ¡£ÆäʵÉÏÃæµÄ¹¦ÄÜÒªÇóÓ÷½·¨ÖØÔØÍêÈ«¿ÉÒÔʵÏÖ£¬ÕâÊÇÃæÏò¶ÔÏó±ä³ÉÓ¦ÓеÄ×ö·¨£¬±ÜÃâ»Øµ½½á¹¹»¯±à³Ìģʽ¡£Ö»ÒªÌṩÁ½¸öÃû×ֺͷµ»ØÖµ¶¼Ïàͬ£¬½ÓÊܲÎÊýÀàÐͲ»Í¬µÄ·½·¨¾Í¿ÉÒÔÁË£º
¡¡¡¡public double calculate(PhoneBill bill) {
¡¡¡¡//¼ÆËãµç»°Õ˵¥
¡¡¡¡}
¡¡¡¡public double calculate(GasBill bill) {
¡¡¡¡//¼ÆËãÈ¼ÆøÕ˵¥
¡¡¡¡}
¡¡¡¡ËùÒÔ£¬Ê¹ÓÃinstanceofÔÚ¾ø´ó¶àÊýÇé¿öϲ¢²»ÊÇÍÆ¼öµÄ×ö·¨£¬Ó¦µ±ºÃºÃÀûÓöà̬¡£
Ïà¹ØÎĵµ£º
public List<Integer> findSame(int array1[], int array2[]) {
// ÖØ¸´ÔªËؽá¹û¼¯ºÏ
List<Integer> result = new ArrayList<Integer>();
// ......
Java: class , objects
1 Inheritance(¼Ì³Ð)µÄ¹Ø¼ü×Öextends
class MountainBike extends Bicycle {
}
µ«ÊDz»ÄܶàÖØ¼Ì³Ð¡£²»¹ý¿ÉÒÔͨ¹ýimplements¶à¸öinterfaceÀ´ÊµÏÖÀàËÆµÄ¶«Î÷
2 interface
interface Bicycle {
void changeCadence(int newValue); // wheel rev ......
²åÈëÅÅÐòµÄ¹¤×÷ÔÀíÊÇͨ¹ý¹¹½¨ÓÐÐòÐòÁУ¬¶ÔÓÚδÅÅÐòÊý¾Ý£¬ÔÚÒÑÅÅÐòÐòÁÐÖдӺóÏòǰɨÃ裬ÕÒµ½ÏàӦλÖò¢²åÈë¡£Æä¾ßÌå²½Öè²Î¼û´úÂë¼°×¢ÊÍ¡£
view plaincopy to clipboardprint?
/**
* ²åÈëÅÅÐò<br/>
* <ul>
* <li>´ÓµÚÒ»¸öÔªËØ¿ªÊ¼£¬¸ÃÔªËØ¿ÉÒÔÈÏΪÒѾ±»ÅÅÐò ......
ÏÂÒÔjavaΪÀý×Ó˵Ã÷һЩ×Ô¼ºÓöµ½µÄ£º
·ÃÎÊ¿ØÖÆ:
private ˽ÓеÄ
protected Êܱ£»¤µÄ
public ¹«¹²µÄ
Àà¡¢·½·¨ºÍ±äÁ¿ÐÞÊηû
abstract ÉùÃ÷³éÏó
class Àà
extends À©ÔÊ,¼Ì³Ð
final ÖÕ¼«,²»¿É¸Ä±äµÄ
implementsʵÏÖ
interface ½Ó¿Ú
native ±¾µØ
new ÐÂ,´´½¨
static ¾²Ì¬
strictfp Ñϸñ,¾«×¼
synchr ......
ËùÓеijÌÐò¿ª·¢Êֲᶼ°üº¬Á˸÷ÖÖ¹æÔò¡£Ò»Ð©Ï°¹ß×ÔÓɳÌÐòÈËÔ±¿ÉÄܶÔÕâЩ¹æÔòºÜ²»ÊÊÓ¦£¬µ«ÊÇÔÚ¶à¸ö¿ª·¢ÈËÔ±¹²Í¬Ð´×÷µÄÇé¿öÏ£¬ÕâЩ¹æÔòÊDZØÐèµÄ¡£Õâ²»½ö½ö
ÊÇΪÁË¿ª·¢Ð§ÂÊÀ´¿¼ÂÇ£¬¶øÇÒÒ²ÊÇΪÁ˺óÆÚά»¤¿¼ÂÇ¡£
ÃüÃû¹æ·¶
¶¨ÒåÕâ¸ö¹æ·¶µÄÄ¿µÄÊÇÈÃÏîÄ¿ÖÐËùÓеÄÎĵµ¶¼¿´ÆðÀ´ÏñÒ»¸öÈËдµÄ£¬Ôö¼Ó¿É¶ÁÐÔ£¬¼õÉÙÏîÄ¿×éÖ ......