• Java——类的无参、带参方法



    》类的无参方法

    什么是类的方法  

      类是由一组具有相同属性和共同行为的实体抽象而来。对象执行的操作是通过编写类的方法实现的。显而易见,类的方法是一个功能模块,其作用是“做一件事情”。

    如何定义类的方法

    类的方法必须包括以下3个部分

      》方法名称。

      》方法返回值。

      》方法的主体。

    语法:

    public  返回值类型  方法名(){

      //方法的主体

    }

    在编写方法时要注意一下3点:

      》方法体放在一对大括号中。方法体就是一段程序代码,完成一定工作。

      》方法名主要在调用这个方法时使用。在Java中一般采用骆驼式命名法。

      》方法执行后可能返回一个结果,该结果的类型称为返回值类型。使用 return 语句返回值。

    语法 :

      return  表达式;      作用:跳出方法,返回结果。

    public class Student {
    
        String name;
        
        //在方法名括号里没有参数的称之为无参方法
        public String initname(){
            name="小红";
            return name;
        }
    }

    方法调用:

    语法:

      对象名.方法名();

      Java中类是程序的基本单元。每个对象需要完成特定的应用程序功能。当需要某一对象执行一项特定操作时,通过调用方法来实现。另外,在类中,类的不同方法之间也可以进行相互调用

    》测试类
    public class MyTest {
        public static void main(String[] args) {
            Student stu = new Student();   //创建学生对象
            String name =stu.initname();   //调用方法并接收方法的返回值
            System.out.println(name);   //显示类信息
            
        }
    }

    》常见错误
    原因分析:方法的返回值类型为void,方法中不能有return 语句。

    原因分析:方法不能返回多个值。

    原因分析:多个方法不能相互嵌套定义。例如,不能将getInfo()定义在showInfo()中。

    原因分析:不能在方法外部直接编写程序逻辑代码。


    》成员变量和局部变量

       Java中以类来组织程序,类中可以定义变量和方法,在类的方法中。同样可以定义变量。

    public class Student {
        /**
         * 成员变量:类的方法可以直接使用该类定义的成员变量。如果其它类的方法要访问它,
         * 必须首先创建该类的对象,然后才能通过操作符"." 来引用
         * */
        String name;
        
        //在方法名括号里没有参数的无参方法
        public String initname(){
            name="小红";  //直接引用成员变量
            /**
             * 局部变量:它的作用域仅仅在定义该变量的方法内,因此只有在这个方法中能够使用。
             * */
            String name1 = "小明";   //局部变量
            return name1;
        }
    }
    需要注意以下几点:
    》作用域的不同。局部变量的作用域仅限于定义它的方法,在该方法外无法访问。成员变量的作用域在整个类的内部都是可见的,所有成员方法都可以使用,如果访问权限允许,还可以在类外部使用成员变量。
    》初始值不同。对于成员变量,如果在类定义中没有给它赋初始值,Java会给它一个默认值,基本数据类型的值为0,引用类型的值为 null 。但Java不会给局部变量赋初始值,因此局部了变量必须要定义赋值后再使用。
    》在同一个方法中,不允许有同名的局部变量。在不同的方法中,可以有同名的局部变量。
    》局部变量可以和成员变量同名,并且在使用时,局部变量具有更高的优先级。

    》带参方法

    语法:

    <访问修饰符> 返回值类型 <方法名>(<参数列表>){

      //方法的主体
    }

    public class Student {
        
        //带参方法
        public void initname(String name){
            System.out.println(name);
        }
    }

    调用带参方法:

      调用带参方法与调用无参方法的语法相同,但是在调用带参方法时必须传入实际的参数的值。

    public static void main(String[] args) {
            Student stu = new Student();   //创建学生对象
            
            Scanner input =new Scanner(System.in);
            System.out.println("请输入姓名:");
            String name= input.next();
            stu.initname(name);  //转入参数
            
        }

    在定义方法和调用方法时,把参数分别称为形式参数和实际参数,简称形参和实参。形参是在定义方法是对参数的称呼,目的是定义方法需要传入的参数个数和类型。实参是在调用方法时传递给方法处理的实际的值。

    调用方法时,需要注意一下两点。

    》先实例化对象,再调用方法。

    》实参的类型、数量、顺序都要与形参一一对应。


    》传入多个参数
    public class Student {
        
        //带参方法
        public void initname(String name,int age){
            System.out.println(name);
        }
    }
    调用方法:
    public static void main(String[] args) {
            Student stu = new Student();   //创建学生对象
            
            Scanner input =new Scanner(System.in);
            System.out.println("请输入姓名:");
            String name= input.next();
            System.out.println("请输入年龄:");
            int age= input.nextInt();
            
            stu.initname(name,age);  //转入参数
            
        }
    注意:在多个参数中,形参和实参一定要一一对应。

    》以对象作为参数
    学生类
    public class Student {
        int id;
        String name;
        int age;
        
        
        public void showInfo(){
            System.out.println(id+"	"+name+"	"+age);
        }
    }
    学生管理类
    public class StudentBiz {
        Student[] stus=new Student[5];
        
        //添加方法
        public void addStudent(Student stu){
            for (int i = 0; i < stus.length; i++) {
                if(stus[i]==null){
                    stus[i]=stu;
                    break;
                }
            }
        }
        
        //遍历学生信息
        public void showStudent(){
            System.out.println("本班学生列表:");
            
            for (int i = 0; i < stus.length; i++) {
                if(stus[i]!=null){
                    stus[i].showInfo();
                }
            }
        }
    }
    调用方法
    public static void main(String[] args) {
            
            Student stu1 = new Student();   //创建学生对象
            stu1.id=18;
            stu1.name="小明";
            stu1.age=20;
            
            Student stu2 = new Student();   //创建学生对象
            stu2.id=19;
            stu2.name="小红";
            stu2.age=19;
            
            //创建学生管理对象
            StudentBiz biz=new StudentBiz();
            biz.addStudent(stu1);
            biz.addStudent(stu2);
            
            biz.showStudent();
            
            
        }
  • 相关阅读:
    golang html/template template.ParseFiles(filenames) 相对路径问题
    深入理解jvm jdk1,7(19)
    深入理解jvm jdk1,7(18)
    深入理解jvm jdk1,7(17)
    深入理解jvm jdk1,7(16)
    深入理解jvm jdk1,7(15)
    深入理解jvm jdk1,7(14)
    hugo 制作个人博客总结
    后台管理系统总结
    pageHelper(分页插件的使用)
  • 原文地址:https://www.cnblogs.com/szj-ang/p/7230161.html
Copyright © 2020-2023  润新知