public class Test { public static void main (String[] args){ Student s = new Student("张三",176,"java"); s.person.rest(); s.study(); } } class Person{ String name; int height; public void rest(){ System.out.println("休息"); } } class Student{ Person person = new Person(); String major;//专业 public Student(String name,int height,String major){ this.person.height = height; this.person.name = name; this.major = major; System.out.println("这是一个构造方法"); } public void study(){ System.out.println("学习"); } } 老师我有两个疑问?
方法Student这是不是一个有参构造
Student创建对象时传的参数有什么作用
cls在苹果系统也不行
苹果的清除屏幕的dos是什么呢
问题1:老师,我在类中定义了一个成员变量int a=0,然后在方法里定义了a=3。然后在如下代码里,方法中int a=3和 a=3,运行结果不同。
package com.bjsxt.array; public class test10 { public static void main(String[] args) { test0 e=new test0(); e.Add(); e.Add2(); } } class test0{ int a=0; public void Add(){ a=3; System.out.println(a); } public void Add2(){ int c=a*2; System.out.println(c); } }
当Add()方法中写的是a=3时,运行结果是3,6
当Add()方法中写的是int a=3事,运行结果是3,0
这两个结果为什么会不同呢?望老师讲解,谢谢!
该如何重写 compareTo方法?我重写了还是有错误呢?
package com.itbaizhan; import java.util.Arrays; public class Test09 { public static void main(String[] args) { Man2[] msMans = {new Man2(3, "a"), new Man2(60, "b"), new Man2(2, "c") }; Arrays.sort(msMans); System.out.println(Arrays.toString(msMans)); } } class Man2 implements Comparable { int age; int id; String name; public Man2(int age, String name) { super(); this.age = age; this.name = name; } public String toString() { return this.name; } public int CompareTo(Object o) { Man2 man2 = (Man2) o; if (this.age < man2.age) { return -1; } if (this.age > man2.age) { return 1; } return 0; } }
执行结果显示如下:
老师,为什么定义数组时,一维数组用类名做数组的类型,而二维不用类名做数组的数据类型啊?而是用根类:Object?
TestSwitch { (String[] args) { grade=()(*Math.())(grade){ case1: System..println()case2: System..println()case3: System..println(): System..println()} } }
老师,我的代码有点问题,不知道为什么
构造方法和普通方法如何区分?
char d = 'h';
System.out.println((int)d);
boolean e = d>100;
System.out.println(e);
这个里面在比较d>100时一定要把d强制转型为数值么?
System.out.println(d);
System.out.println(e);这样直接做比较可以么?
public static int handleLate(int LateMinute,int monthSalary){ int fakuan = 0; ............2 int daySalary = (int)(monthSalary/22.5); ............3 System.out.println("迟到分钟数:"+LateMinute); ............4 System.out,println("月薪:"+monthSalary); ............5 if(LateMinute<=30){ System.out.println("罚款200元"); fakuan = 200; ...................................................8 }else{ System.out.println("扣除1日工资"); fakuan = daySalary; ............................................11 } return fakuan;
老师,三个问题:
1、调用这个方法的时候只需要输入LateMinute和monthSalary,后面会自动判断然后输出罚款多少元,那为什么第二行还要设定一个fakuan=0,后面第8行第11行还要给fakuan赋值?整个方法里没有输出fakuan值啊
2、return的作用是返回值和结束方法的运行。返回值具体的意思是?
3、return结束方法,后面为什么是跟着fakuan?这个方法里fakuan和daySalary都是一开始声明的值,为什么是return fakuan而是return daySalary?怎么判断return后面跟什么?
老师,这些方法都没有return,为什么方法名前面不需要加void
老师,我这个飞机爆炸之后,一直显示异常,并且没次爆炸就会一直刷新异常,该怎么解决?如下代码:
planWar0.9.rar
com.zy.study; java.util.Scanner; SalaryCalculator { main(String[] args) { Scanner scanner = Scanner(System.); System..println(); System..println(); () { System..println(); monthSalary = scanner.nextInt(); System..println(); yearCount = scanner.nextInt(); System..println(+(monthSalary*yearCount)); System..println(); count = scanner.nextInt();
//为什么不能用scanner.nextInt()实现 (scanner.nextInt() == ) { ; } (scanner.nextInt() == ){ ; } } } }
老师我的这个ide安装怎么不一样啊,怎么整下去呀
直接输出t和输出t.toString()有什么区别,是否在重载toString()后想要知道对象的内容只需要输出t即可,除了重载之后看到对象内容,t.toString()处的toString()还有没有什么其他用了?
int flag = x>0?1:(x==0?0:-1);
这里为什么要用flag
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637