java占位符打印_初识Java之⽅法参数篇
⽆论是在c⾥⾯编程还是在Python⾥⾯写代码,我们都会遇到函数这个概念,但是在Java中我们⽤“⽅法”这个概念,和函数其实是差不多的,因为他们指代的内容差不多,Java成为全世界最⼴泛的语⾔之⼀,就是因为它有⼤量的⽅法。
Java⽅法
什么是⽅法呢?在之前的程序⾥⾯我们看到了println()这个打印的,其实它就是⼀个⽅法
System.out.println();
println() 是⼀个⽅法。
System 是系统类。
out 是标准输出对象。
Java⽅法是语句的集合,它们在⼀起执⾏⼀个功能。
⽅法是解决⼀类问题的步骤的有序组合
⽅法包含于类或对象中
⽅法在程序中被创建,在其他地⽅被引⽤
⽅法的优点
1. 使程序变得更简短⽽清晰。
2. 有利于程序维护。
3. 可以提⾼程序开发的效率。
4. 提⾼了代码的重⽤性。
⽅法的命名规则
⽅法的名字的第⼀个单词应以⼩写字母作为开头,后⾯的单词则⽤⼤写字母开头写,不使⽤连接符(驼峰式命名)
修饰符返回值类型⽅法名(参数类型参数名){
...
⽅法体
...
return 返回值;
}
package Java⽅法;
public class ⽅法参数 {
static void printName(String name){
System.out.println("hello everyone! my name is "+name);
}
public static void main(String[]args){
printName("王⼩王");
}
}
其实说到底,和函数的调⽤有异曲同⼯之妙,我们⾸先按照格式定义⼀个⽅法,⽅法⾥⾯要有打印的东西,还要在⽅法体⾥⾯写出具体的⽅法,⾄于修饰符我们通常选⽤static,返回值类型⼀般void,最后在main⽅法⾥⾯调⽤的时候我们直接把之前定义好的⽅法加上参数即可。也可以定义多个参数!
static void printName(String name,int age ,float x){
System.out.println("hello everyone! my name is "+name+",我今年:"+age+",我的薪⽔是:"+x);
}
public static void main(String[]args){
printName("王⼩王",20,10000);
}
}
修饰符:修饰符,这是可选的,告诉编译器如何调⽤该⽅法。定义了该⽅法的访问类型。
返回值类型:⽅法可能会返回值。returnValueType 是⽅法返回值的数据类型。有些⽅法执⾏所需的操作,但没有返回值。在这种情况下,returnValueType 是关键字⽅法名:是⽅法的实际名称。⽅法名和参数表共同构成⽅法签名。
参数类型:参数像是⼀个占位符。当⽅法被调⽤时,传递值给参数。这个值被称为实参或变量。参数列表是指⽅法的参数类型、顺序和参数的个数。参数是可选的,⽅⽅法体:⽅法体包含具体的语句,定义该⽅法的功能。
⽅法有返回值
package Java⽅法;
public class 返回值参数 {
// 这⾥定义了⼀个有返回值的⽅法体,所以类型为int
static int ageY(int age2,int age1){
// 注意返回值的参数前⾯要加数据类型
int age3=age2+age1;
// 和我们Python语⾔⼀样return
return age3;
}
public static void main(String[]args){
// 调⽤即可
System.out.println(ageY(10,12));
}
}
不在同⼀窗⼝的类调⽤
当然在⼀个⽅法体⾥⾯可以有多个⽅法不在同⼀窗⼝的类调⽤
package Java⽅法;
public class ⽅法参数调⽤ {
public static void main(String[]args){
⽅法参数.printName("王⼩王",20,10000);
System.out.println(⽅法参数.getMK(10));
}
}
这⾥我们新建了⼀个类,我们调⽤了之前写的那个⽅法,⽽调⽤⽅法就是类名.⽅法(参数)
按值传递参数
public static void nPrintln(String message, int n) {
for (int i = 0; i < n ; i++) {
System.out.println(message);
}
}
public static void main(String[]args){
nPrintln("hello",100);
}
}
这⾥通过for循环打印了100次,通过按值传递的参数⽅法,把后⾯main⽅法⾥⾯的实参传⼊⽅法体内,进⾏形参转换,这样就达到了,总的来说和函数差不多的。
⽅法的重载
public static double max(double num1, double num2) {
if (num1 > num2)
return num1;
else
return num2;
}
如果你调⽤max⽅法时传递的是int型参数,则 int型参数的max⽅法就会被调⽤;
如果传递的是double型参数,则double类型的max⽅法体会被调⽤,这叫做⽅法重载;
就是说⼀个类的两个⽅法拥有相同的名字,但是有不同的参数列表。
Java编译器根据⽅法签名判断哪个⽅法应该被调⽤。
⽅法重载可以让程序更清晰易读。执⾏密切相关任务的⽅法应该使⽤相同的名字。
重载的⽅法必须拥有不同的参数列表。你不能仅仅依据修饰符或者返回类型的不同来重载⽅法。
构造⽅法
当⼀个对象被创建时候,构造⽅法⽤来初始化该对象。构造⽅法和它所在类的名字相同,但构造⽅法没有返回值。
通常会使⽤构造⽅法给⼀个类的实例变量赋初值,或者执⾏其它必要的步骤来创建⼀个完整的对象。
不管你是否⾃定义构造⽅法,所有的类都有构造⽅法,因为Java⾃动提供了⼀个默认构造⽅法,默认构造⽅法的访问修改符和类的访问修改符相同(类为 public,构造函数也为 public;类改为 protected,
构造函数也改为 protected)。⼀旦你定义了⾃⼰的构造⽅法,默认构造⽅法就会失效。
// ⼀个简单的构造函数
class MyClass {
int x;
// 以下是构造函数
MyClass() {
x = 10;
}
}
可变参数
< parameterName
在⽅法中,指定参数类型后加⼀个省略号(…)⼀个⽅法中只能指定⼀个可变参数,它必须是⽅法的最后⼀个参数。任何普通的参数必须在它之前声明。
package Java⽅法;
public class 可变参数 {
public static void main(String args[]) {
// 调⽤可变参数的⽅法
printMax(34, 3, 3, 2, 56.5);
printMax(new double[]{1, 2, 3});
}
public static void printMax( numbers) {
if (numbers.length == 0) {
System.out.println("No argument passed");
return;
}
double result = numbers[0];
for (int i = 1; i < numbers.length; i++){
if (numbers[i] > result) {
result = numbers[i];
python转java代码}
}
System.out.println("The max value is " + result);
}
}
从编译结果来看我们知道这个的功能是把两个列表⾥⾯进⾏⽐较⼤⼩,最后得出最⼤的值,这⾥运⽤了可变参数的概念
另外的可变参数还有⼀个固定参数,⼀般是先执⾏固定参数,后执⾏可变参数,通过反复的⽅法重载我们有把可变参数按照固定参数进⾏执⾏。
我们来看看这个代码
package Java⽅法;
public class ⽅法重载 {
// 定义⼀个可变参数,按照格式
public static void args){
System.out.println("这是可变参数的⼊参⽅法!");
// 利⽤for循环遍历参数,⾸先声明变量
for (String arg :args){
System.out.println("⼊参为:"+arg);
}
}
public static void main(String[]args){
// 这⾥有⽅法重载
test();
test("A");
test("a","n","l");
}
}
finalize() ⽅法
Java 允许定义这样的⽅法,它在对象被垃圾收集器析构(回收)之前调⽤,这个⽅法叫做 finalize( ),它⽤来清除回收对象
protected void finalize()
{
// 在这⾥终结代码
}
关键字 protected 是⼀个限定符,它确保 finalize() ⽅法不会被该类以外的代码调⽤
public class FinalizationDemo {
public static void main(String[] args) {
Cake c1 = new Cake(1);
Cake c2 = new Cake(2);
Cake c3 = new Cake(3);
c2 = c3 = null;
<(); //调⽤Java垃圾收集器
}
}
class Cake extends Object {
private int id;
public Cake(int id) {
this.id = id;
System.out.println("Cake Object " + id + "is created");
}
protected void finalize() throws java.lang.Throwable {
super.finalize();
System.out.println("Cake Object " + id + "is disposed");
}
}
这个⾥⾯就是经常⽤到语法知识点,代码可能对于现在的你有点陌⽣,但是后⾯我们慢慢了解就会越来越熟悉了!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论