java学习心得4
构造方法
一
类的成员:
1.私有成员:private
2.公共成员:public
3.缺省:空白(默认public)
方法重载:
同一类中,方法名相同,但列表不同。
二
构造方法:
1.特点:
与类名相同;无返回值不写void;作用是完成对类的初始化;用new调用
2.一般形式:
public class 类名{
修饰符 类名(参数){
}
}
例如:
```java
public class Cy1 {
//定义圆柱体底面半径和高
private double R,H;
double pi=3.14;
//定义圆柱体颜色
private String C;
//定义构造方法
public Cy1(double r,double h){
R=r;
H=h;
}
public String show(String c){
C=c;
c="红色";
System.out.println("圆柱体的颜色为:"+c);
//切记需返回值
return c;
}
double V(){
return pi*R*R*H;
}
public static void main(String[] args) {
Cy1 s=new Cy1(2,5);
System.out.println("圆柱体的体积为:"+s.V());
s.show(s.C);
}
}
3.分类:
有参构造和无参构造 (未给构造方法时,系统子东给定无参构造)
例如:
public class son {
private String name;
private int age;
//构造方法(若不写则认为默认构造方法)
//public son(){
// System.out.println("无参构造");
//}
//手动给出无参构造
public son(){
}
public son(String name){
this.name=name;
}
public son(int age){
this.age=age;
}
public void show(){
System.out.println(name+","+age);
}
}
``
三
静态变量(类变量):用static修饰的成员变量
静态方法:不使用this和super
静态方法的调用:类名。静态方法名();
类的继承
关键字:extends
1.继承格式:
public class 子类名 extends 父类名{}
例如:
public class message {
protected String name,sex,national;
protected int age;
public message(String n,String s,String N,int a){
name=n;
sex=s;
national=N;
age=a;
}
public void main(String[] args) {
message m=new message("陈宇豪","男","焦作",17);
System.out.println("姓名:"+ m.name);
System.out.println("性别:"+m.sex);
System.out.println("籍贯:"+m.national);
System.out.println("年龄: "+m.age);
}public class Student extends message{
private String bh,xh;
public Student(String B,String X){
super("谢鹏超","男","洛阳",18);
name="谢鹏超";
sex="男";
national="洛阳";
age=18;
bh=B;
xh=X;
}
public void main(String[] args) {
Student z=new Student("213","20211547310");
System.out.println(""+super.name);
System.out.println(""+super.sex);
System.out.println(""+super.national);
System.out.println(""+super.age);
System.out.println("班号:"+z.bh);
System.out.println("学号:"+z.xh);
}
}
}
2.
继承中变量访问特点:
在子类方法中访问一个变量:
子类局部范围,子类成员范围,父类成员范围
3.关键字super和this的区别:
4.最终类:
用final关键字修饰
Object类
1.所有类的父类为Object类
2.equals方法
public boolean equals(Object obj) {
return (this == obj);
}
3.区别equals与 ==
(1)对于字符串变量来说,使用“==”和equals()方法比较字符串时,其比较方法不同。
(2)“==”比较两个变量本身的值,即两个对象在内存中的首地址。
(3)“equals()”比较字符串中所包含的内容是否相同.