java学习 (1)
从现在开始好好搞java,虽然上学期已经学了,但是我觉得自己操作还是少了点,所以就编编,谢谢日志记录吧。
1.成员变隐藏:
class People{public double x;
public void setX(double x){
this.x=x;
}
public double getDoubleX(){
return x;
}
}
class Student extends People{
int x;
public int getX(){
//x=20.56; //此时x的类型是int型的
return x;
}
}
public class Example5_3 {
/**
* @param args
*/
public static void main(String[] args) {
Student stu=new Student();
stu.x=98;
System.out.println("对象stu的值是:"+stu.getX());
//stu.x=98.98 非法
stu.setX(98.98); //此时x的类型是double型的
double m=stu.getDoubleX();
System.out.println("对象stu隐藏的x的值是:"+m);
}
}
2.super关建词:
Sum.java
1 public class Sum {2 int n;
3 public double f(){
4 double sum=0;
5 for(int i=1;i<=n;i++){
6 sum=sum+i;
7 }
8 return sum;
9 }
10
11 }
Average.java
1 public class Average extends Sum{2 double n; //子类继承的int型变量n被隐藏
3 public double f(){
4 double c;
5 super.n=(int)n; //double型变量n做int型转换,结果赋值给隐藏的int型变量n。
6 c=super.f();
7 return c+n;
8 }
9 public double g(){
10 double c;
11 c=super.f();
12 return c-n;
13 }
14 }
main
1 public class Example5_7 {2
3 /**
4 * @param args
5 */
6 public static void main(String[] args) {
7 Average aver=new Average();
8 aver.n=100.5678;
9 double result1=aver.f();
10 double result2=aver.g();
11 System.out.println("reslut1="+result1);
12 System.out.println("result2="+result2);
13 }
14
15 }
结果:
3.final关键字
final
1 //final方法只能被老老实实继承,不许做任何篡改2 //成员变量或者局部变量被修饰为final的,就是常量,声明常量时必须指定该常量的值,而且不能再发生变化。
3 class A{
4 //final double PI; 非法,没有给常量指定值
5 final double PI=3.1415926;
6 public double getArea(final double r){
7 return PI*r*r;
8 }
9
10 public final void speak(){
11 System.out.println("您好,How's everything here?");
12 }
13 }
14
15 class B extends A{
16 /* 非法,不能重写speak方法
17 * public void speak(){
18 System.out.println("您好。");
19 }*/
20 }
21 public class Example5_8 {
22
23 /**
24 * @param args
25 */
26 public static void main(String[] args) {
27 // TODO Auto-generated method stub
28 B b=new B();
29 System.out.println("面积:"+b.getArea(100));
30 b.speak();
31 }
32
33 }
以上是 java学习 (1) 的全部内容, 来源链接: utcz.com/z/389678.html