我这段代码是否正确体现了构造方法?

djliu2 2016-04-26 09:40:56
public class Number38 {
int chang;
int kuan;
int mianji;
public Number38(int chang,int kuan){
this.chang=5;
this.kuan=4;
}
public int mianji(){
mianji=(chang*kuan);
return mianji;
}
}
...全文
258 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
HerveyHall 2016-04-28
  • 打赏
  • 举报
回复
LZ应该是这个意思:
public class Number38 {
    int chang;
    int kuan;
    public Number38(){
       this(5,4);
    }
    public Number38(int chang,int kuan){
       this.chang=chang;
       this.kuan=kuan;    
    }
    public int mianji(){
       return chang*kuan;
    }
}
linglingj0 2016-04-28
  • 打赏
  • 举报
回复
this指代的是该类所new出来的对象, this.chang代表你new出来对象里面的成员变量chang. 而你构造函数里面的参数chang只是一个 形式,写什么都可以 当你通过new number(5,4)来创建对象时, 由于你构造函数里面已经把5和4写死了直接付给对象里面的成员变量chang和kuan 所以此时你的构造函数并没体现出它的用处new number(?,?) 里面两个问号无论填什么都对你的函数运行的返回值没有影响, 也就是说你现在写的函数除了算出5x4等于几以外并没有什么卵用.
天皇101 2016-04-28
  • 打赏
  • 举报
回复
名字里有数字没关系吧
bajinggong 2016-04-28
  • 打赏
  • 举报
回复
构造方法用来初始化字段,计算面积另外写代码。
tangxheng 2016-04-28
  • 打赏
  • 举报
回复
package test; public class Number38 { int chang; int kuan; int mianji; public Number38(){ } public Number38(int chang, int kuan) { this.chang = chang; this.kuan = kuan; } public int mianji() { mianji = (chang * kuan); return mianji; } public int getChang() { return chang; } public void setChang(int chang) { this.chang = chang; } public int getKuan() { return kuan; } public void setKuan(int kuan) { this.kuan = kuan; } public int getMianji() { return mianji; } public void setMianji(int mianji) { this.mianji = mianji; } }
tangxheng 2016-04-28
  • 打赏
  • 举报
回复
package test; public class Number38 { int chang; int kuan; int mianji; public Number38(){ } public Number38(int chang, int kuan) { this.chang = 5; this.kuan = 4; } public int mianji() { mianji = (chang * kuan); return mianji; } public int getChang() { return chang; } public void setChang(int chang) { this.chang = chang; } public int getKuan() { return kuan; } public void setKuan(int kuan) { this.kuan = kuan; } public int getMianji() { return mianji; } public void setMianji(int mianji) { this.mianji = mianji; } }
chaser401 2016-04-28
  • 打赏
  • 举报
回复
是构造方法,但是不能通过方法赋值
疯雪 2016-04-27
  • 打赏
  • 举报
回复
构造方法目的是给成员变量初始化用的,在这里你可以有两个构造方法,

public Number38(){
chang = 3;
kuan = 4;
}
public Number38(int chang,int kuan){
this.chang = chang;
this.kuan = kuan;
}
另外变量定义的时候建议使用英文单词
  • 打赏
  • 举报
回复
引用 3 楼 qq_34324650 的回复:
public class Number38 { private int chang = 0; private int kuan = 0; public Number38( ){ chang = 5; kuan = 4; } public Number38(int chang, int kuan){ this.chang = chang; this.kuan = kuan; } public int getMianji(){ return chang*kuan; } } 调用方式如:Number38 a = new Number38(); Number38 b = new Number38(10,8);
+1
Alphathur 2016-04-26
  • 打赏
  • 举报
回复
长宽都限制死了
djliu2 2016-04-26
  • 打赏
  • 举报
回复
引用 4楼constant_f 的回复:
你直接把长宽给顶死了,你这个构造函数没意义了把?
不是很理解 能详细说说么
djliu2 2016-04-26
  • 打赏
  • 举报
回复
引用 3楼qq_34324650 的回复:
public class Number38 { private int chang = 0; private int kuan = 0; public Number38( ){ chang = 5; kuan = 4; } public Number38(int chang, int kuan){ this.chang = chang; this.kuan = kuan; } public int getMianji(){ return chang*kuan; } } 调用方式如:Number38 a = new Number38(); Number38 b = new Number38(10,8);
这个调用方式怎么说 我是小白
constant_f 2016-04-26
  • 打赏
  • 举报
回复
你直接把长宽给顶死了,你这个构造函数没意义了把?
qq_34324650 2016-04-26
  • 打赏
  • 举报
回复
public class Number38 { private int chang = 0; private int kuan = 0; public Number38( ){ chang = 5; kuan = 4; } public Number38(int chang, int kuan){ this.chang = chang; this.kuan = kuan; } public int getMianji(){ return chang*kuan; } } 调用方式如:Number38 a = new Number38(); Number38 b = new Number38(10,8);
  • 打赏
  • 举报
回复
嗯嗯嗯,是的...

  4 public class Number38 {
  3     private int chang  = 0;
  2     private int kuan   = 0;
  1     private int mianji = 0;
  0     public Number38(int chang, int kuan ){   
  1     ¦   this.chang=5;
  2     ¦   this.kuan=4;
  3     ¦   mianji = chang * kuan;
  4     }   
  5     public int calculateMianji(){
  6     ¦   return mianji;
  7     }   
  8 } 

  • 打赏
  • 举报
回复

  9 public class Number38 {
  8     private int chang  = 0;
  7     private int kuan   = 0;
  6     private int mianji = 0;
  5     public Number38(int chang, int kuan ){   
  4     ¦   this.chang=5;
  3     ¦   this.kuan=4;
  2     ¦   mianji = chang * kuan;
  1     }   
  0     public int getMianji(){
  1     ¦   return mianji;
  2     }   
  3 } 

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧