首页 > 代码库 > 第六天

第六天

1.新建一个方法可以直接用return就行,不用考虑新建一个什么乱起八糟的值,之前我居然不知道,真是够了。。。

  例子:

double getDistance(point p) {    return p.x*p.x+p.y*p.y+p.z*p.z;        }

2.重载和重名是不一样的,例如int max和void max是不一样的,突然想起c#里面的filestream后面括号里面十几个重载,真是触类旁通啊,666

  例子

public class overload {    void max(int a,int b) {        System.out.println(a>b?a:b);    }        void max(double a,double b) {        System.out.println(a>b?a:b);    }        void max(short a,short b) {        System.out.println("short");        System.out.println(a>b?a:b);    }        void max() {        System.out.println("this is a null");    }        public static void main(String[] args) {        overload o = new overload();        o.max(6,5);        o.max(1.1,2.2);        short a = 1;        short b = 2;        o.max(a,b);        o.max();    }}

 3.构造函数的重载。。。。。。我真是日了整个动物园了!!!!!

 

public class overload {
public
static void main(String[] args) {
//方法的重载 ff o = new ff(); o.max(6,5); o.max(1.1,2.2); short a = 1; short b = 2; o.max(a,b); o.max(); //构造函数的重载 gzhs p = new gzhs(); gzhs p1 = new gzhs(23); gzhs p2 = new gzhs(23,"Martin"); }} class ff { void max(int a,int b) { System.out.println(a>b?a:b); } void max(double a,double b) { System.out.println(a>b?a:b); } void max(short a,short b) { System.out.println("short"); System.out.println(a>b?a:b); } void max() { System.out.println("this is a null"); }}class gzhs { int age; String str = new String(); gzhs() { System.out.println("18 mike"); } gzhs(int _age) { age = _age; System.out.println(age+" mike"); } gzhs(int _age,String _str) { age = _age; str = _str; System.out.println(age+" "+str); }}

a.其他类不要写在public类里面,不然就有点像c#的子类的感觉,就好比上面的程序,如果ff和gzhs包含在overload里面,new的时候就要这样---->ff o = new overload().new ff();gzhs p = new overload().new gzhs();

b.string类型的参数要用new来定义,例如:String str = new String();

c.构造函数的重载不需要再p.gzhs()这种形式的了!!!!!!!要和方法区分开来啊!!!还有就是new对象的时候不能重复new,就好比下面的代码是错误的

//这个代码是错误的
gzhs p = new gzhs();gzhs p = new gzhs(23);gzhs p = new gzhs(23,"Martin");

 

  没人带真是痛苦啊,不过我自己悟性还是挺高的,自吹一波,哈哈,睡觉咯~~~~

第六天