菁英科技(卓目鸟学苑)- 专注软件测试菁英教育
标题:
Java__张国荣__20210309
[打印本页]
作者:
淰7331
时间:
2021-3-9 19:41
标题:
Java__张国荣__20210309
1.面向对象:最小的处理单位是类。把大象装入冰箱,这个过程中有哪些事物,每个事物的行为。
//类型:有相同特征的一个群体。
class Student{
成员变量(Python是在__init__方法中定义的)
成员变量:在类中定义的变量 ,属于实例的,通过new创建实例的时候,这些属性就创建了。实例销毁时,这些属性才会释放。
堆内存 (更新慢),public /private/static/final 可以用来修饰成员变量
局部变量:(book,place)在方法中定义的变量,方法的参数 。调用方法时,才会创建局部变量,方法调用完释放
栈内存 (更新快),final 可以用来修饰局部变量
成员变量和局部变量的名字可以一样 ,成员变量加this来标识
public void setName(String name){
this.name 成员变量
= 后面的name是局部变量
this.name = name;
}
String name;
char gender;
int age;
float height;
float weight;
public void info(){
System.out.println("姓名:"+name+",性别:"+gender+",年龄:"+age+",身高:"+height+",体重:"+weight);
}
void 没有返回值 public 公共的 没有参数
public void sleeping(){
System.out.println(name+"正在睡觉");
}
方法带了两个String类型的参数,一个表示地点,一个表示书
public void learning(String place,String book){
System.out.println(name+"在"+place+"看"+book);
}
方法声明返回一个int类型的值,方法体中用return返回对应的值
public int getAge(){
return age;
}
2.
方法的重载: 一个类中有多个重名的方法:参数的个数,顺序,类型不同
public class Demo03 {
public int add(int a,int b) {
System.out.println("add(int a,int b)");
return a + b;
}
public float add(float c,float d){
System.out.println(
"add(float c,float d)"
)
;
return
c+d
;
}
public double
add
(
double
a
,double
b
,double
c
,double
d) {
System.
out
.println(
"add(double a,double b,double c,double d)"
)
;
return
a + b + c + d
;
}
public
String
add
(
int
a
,
String b){
System.
out
.println(
"add(int a ,String b)"
)
;
return
a + b
;
}
public static void
main
(String[] args) {
Demo03 d03 =
new
Demo03()
;
Python
弱类型语言,方法中定义两个参数,调用时可以传任意类型
java
强类型语言,方法中定义两个参数,调用时只能传对应类型的值
重载的好处:调用起来比较简单
d03.add(
10
,
20
)
;
//int
d03.add(
10.0f
,
20.0f
)
;
//float
d03.add(
10.0
,
20.0
,
30.0
,
40.0
)
;
// double
System.out.println
是重载的方法,只需要知道要打印的内容,知道这个方法名即可
}
3.构造方法
1.
与类名相同,没有返回值,不能有return语句
2. 类里面没有写构造方法,系统会默认提供一个无参的构造方法
3. 类里面有构造方法,系统默认的构造方法就不存在了
4.构造方法支持重载,创建实例更加灵活
5.构造方法可以用IDE自动生成
class Pet {
}
class Pet1{
String name;
int age;
Pet1(String a, int b){//构造方法,给属性赋值
name = a;
age = b;
}
@Override
public String toString() {
return "Pet1{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
}
class Pet2{
String name;
int age;
float weight;
String pinZhong;
String hobby;
构造方法
public Pet2(String name, int age, float weight, String pinZhong, String hobby) {
this.name = name;
this.age = age;
this.weight = weight;
this.pinZhong = pinZhong;
this.hobby = hobby;
}
@Override
public String toString() {
return "Pet2{" +
"name='" + name + '\'' +
", age=" + age +
", weight=" + weight +
", pinZhong='" + pinZhong + '\'' +
", hobby='" + hobby + '\'' +
'}';
}
欢迎光临 菁英科技(卓目鸟学苑)- 专注软件测试菁英教育 (http://www.zmnxy.com/)
Powered by Discuz! X3.4