方法先定义后调用,在main方法外进行定义,在main方法里面进行调用。

带参数方法定义
注意:方法调用时,参数的数量与类型与定义中的设置相匹配

带参数方法定义
数据类型 变量名 = 方法名(参数)
注意:方法定义时return后面的返回值与方法定义上的数据要匹配

相当方法isEvenNunber执行完后返回了ture,然后将false赋给了falg,所以最后输出为true。

方法之间是平级,无法嵌套,void表达无返回值可以不写。return会使代码停止运行,下面代码不再运行。
方法通用格式
public static 返回值类型 方法名(参数){
方法体;
return 数据;
}
方法的重载
重载对应方法的定义,与方法的调用无关,仅对同一个类中方法名称与参数进行识别,与返回值无关。
- 多个方法在同一个类中
- 多个方法具有相同方法名
- 多个方法的参数不相同,类型不同或者数量不同

方法参数传递(基本类型)
对于基本数据类型的参数,形式参数的改变,不用影响实际参数的值。
先将main加载栈内存中,在change方法中将number数据改变为200,在栈内存中运行完后就消失了,并不影响main方法中number的值。

方法参数传递(引用类型)
对于引用类型参数,形式参数的改变,影响实际参数的值。
change方法中的arr[ ] = 200 改变了栈内存中的arr[1] 的值。

Debug调试工具
可以通过构造方法
1、方法名称必须与类名称保持一致;
2、使用new关键字,本质是在调用构造器。构造方法是在使用关键字new实例化对象的时候自动调用的。
3、必须没有返回值,无void。构造方法不允许设置任何返回值类型,即:没有返回值定义;
快捷键 Alt + Insert
4、renurn返回值类型必须与定义的相同
定义构造方法:
public person()
一个构造器:

一个类至少有一个构造方法,
构造方法上不允许设置返回值类型,
程序编译器是根据代码结构来进行编译处理的,执行的时候也是根据代码结构来处理的。
如果在构造方法上使用了void,那么此结构就与普通方法的结构完全相同,这样编译器会认为此方法是一个普通方法,普通方法与构造方法最大的区别:构造方法是在类对象实例化的时候调用的,而普通方法是在类对象实例化产生之后调用的。
既然构造方法本身是一个方法,那么方法就具有重载的特点,而构造方法重载的时候只需要考虑参数的类型以及个数即可。
内容修改的处理
实例化对象:对象名称 = new 类名称()
public static void main(String[] args) {
new Person(“张三”,10).tell;//进行方法的调用
} }输出:张三 10
此时依然通过了对象进行了类中tell()方法的调用,但是由于此对象没有任何的引用名称,所以该对象使用一次之后将成为垃圾,所有的垃圾将被GC进行回收与释放。只要是方法都可以传递任意数据类型。
this关键字:
this :代表对象不同:本身调用这个对象,
super: 代表父类对象的应用
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String name = sc.next();
int age = sc.nextInt();
String sex = sc.next();
Person p = new Person(name,age,sex);
p.display();
}
}
class Person{
String name = "张三";
int age = 18;
String sex = "男";
/********** Begin **********/
public Person(String name,int age,String sex){
this.age = age;
this.name = name;
this.sex = sex;
}
public void display(){
System.out.println("name:" + name);
System.out.println("age:" + age);
System.out.println("sex:" + sex);
}
}
静态方法:static
static关键字的作用
static关键字你可以理解为是一个形容词,一般是用来形容类、方法、变量,代码块,还有一个作用是用来静态导包,本关我们只讨论它的三个用法。
来自 <头歌实践教学平台>
使用static关键字访问对象的属性:

注意:如果一个类的成员变量被static修饰了,那么所有该类的对象都共享这个变量。无论这个类实例化多少对象,它的静态变量只有一份拷贝。 如:

输出:
李四 李四 李四
来自 <头歌实践教学平台>
2.修饰方法
用static关键字修饰的方法叫做静态方法。静态方法我们已经用过,它有一个特点相信你已经很熟悉,那就是不需要创建对象就可以直接使用。 如:

注意:
- 静态方法不能使用类的非静态变量;

- 静态方法可以直接调用静态方法,但是调用普通方法只能通过对象的实例才能调用。

:

输出结果:
我被调用了
静态代码块是不需要依赖main方法就可以独立运行的。
关于静态代码块你只需要记住一句话:在类被加载的时候运行且只运行一次。
非静态方法能调用能调用静态方法,静态方法不能调用非静态方法。
通过类直接调用:int add = Dem03 add(a:1,b:2)
System.out.println(add);
非静态方法:实例化这个类 new ,然后再进行调用。
引用传递:Penson 人 Pet 动物
一个项目只应该存在一个main方法。
类是抽象的,类实例化后会返回一个给自己的对象。
子类与父类
Private 私有 与public一样都属于修饰符。
属性私有化 get/ set
public class Teacher extends AAB; (黄色属于一体)
私有化的子类无法继承,子类放再父类中。
一般分为两个包
System.out.println(string,name);
直接输入测试类中传递的参数
System.out.println(this.name);
当前类中的参数
System.out.println(super.name);
输出父类的参数
调用父类的构造器,必须要在子类构造器第一行写上:
public student (){
super()
}
super 只能出现在子类的方法或者构造方法中。
super和this不能同时调用构造方法。
小结:
对象的创建和使用,先创建对象,然后在是在对象里面设置属性和方法。
-必须使用new 关键字创建对象,构造器 Person syj = new Person()
对象的属性 syj.name
对象的方法 syj.sleep()
方法的重写:

A类继承了B类。
方法的调用只和左边,定义的数据类型有关。

继承:
ubli static void main(String args[]) {
/*/ 实例化一个Cat对象,设置属性name和age,调用voice()和eat()方法,
再打印出名字和年龄信息*/
/********* begin *********/
Cat p = new Cat("大花猫",6);
p.voice();
p.eat();
p.show();
/********* end *********/
/*/ 实例化一个Dog对象,设置属性name和age,调用voice()和eat()方法,
再打印出名字和年龄信息*/
/********* begin *********/
Dog p1 = new Dog("大黑狗",8);
p1.voice();
p1.eat();
p1.show();
/********* end *********/
}
}
class Animal {
/********* begin *********/
String name;
int age;
/********* end *********/
}
class Cat extends Animal {
// 定义Cat类的voice()和eat()方法
/********* begin *********/
public Cat(String name,int age){
this.name = name;
this.age = age;
}
void voice(){ //三个方法
System.out.println(name + "喵喵叫");
}
void eat(){
System.out.println(name + "吃鱼");
}
void show(){
System.out.println(name + age + "岁");
}
/********* end *********/
}
class Dog extends Animal {
// 定义Dog类的voice()和eat()方法
/********* begin *********/
public Dog(String name,int age){
this.name = name;
this.age = age;
}
void voice(){
System.out.println(name + "汪汪叫");
}
void eat(){
System.out.println(name + "吃骨头");
}
void show(){
System.out.println(name + age + "岁");
}
本文详细介绍了Java中的方法,包括方法的定义与调用、构造器的使用、this关键字、静态方法的概念以及子类与父类之间的继承关系。讲解了构造器的规则、参数传递、方法重载以及静态方法的特点,并通过实例展示了如何在子类中调用父类的构造器。此外,还讨论了方法参数的基本类型和引用类型在传递时的区别,以及如何通过构造器和静态方法实现对象的创建和类的初始化。

3373

被折叠的 条评论
为什么被折叠?



