zoukankan      html  css  js  c++  java
  • java基础(8)

    一、变量的作用域(有效的使用范围)

    1、变量有2种

                  1.1成员变量(属性)

    声明在类的里面,方法的外面

                  1.2 局部变量

                                          声明在方法里面或for循环结构中

    2、调用时的注意事项

    2.1 成员变量,有默认值(不初始化),在当前类直接通过成员变量名调用;在其他类中,通过该类的对象名.属性(成员变量)名调用;成员变量名称在同一个类中是唯一的。

                  2.2 局部变量,没有默认值,必须先赋值再使用

    局部变量,只能在当前的方法中使用,其他方法和其他类不能调用;在同一个方法中名称是唯一的,但多个方法中,允许局部变量同名

                  2.3 局部变量和成员变量同名时,局部变量的优先级高于成员变量

    public class shangji1 {
        int java;
        int c;
        int db;
        //计算总分
        public int totalScore(){
            return java+c+db;
        }
        //输出总分
        public void showScore(){
            System.out.println("总分是:"+totalScore());
        }
        //计算平均分
        public double avge(){
            int a=totalScore();
            return a/3.0;
        }
        public void cuAvge(){
            System.out.println("平均分是:"+avge());
        }
    }
    public static void main(String [] args){
            shangji1 s=new shangji1();
            Scanner imput=new Scanner(System.in);
            System.out.print("请输入Java的成绩:");
            s.java=imput.nextInt();
            System.out.print("请输入c的成绩:");
            s.c=imput.nextInt();
            System.out.print("请输入db的成绩:");
            s.db=imput.nextInt();
            s.showScore();
            s.cuAvge();
        }

    二、java文档注释(javadoc)自动生成

          1、单行注释://

          2、多行注释:/* */

    3、文档注释:/**    */

    步骤:

               选择项目后,右键单击再选择【export…】,4个单选按钮中,选择package,最后点击【finish】完成帮助文档html文件的生成,默认保存在当前项目下的【doc】文件夹中

    三、java中无参方法的定义和调用

    1、方法的作用

                      封装(重复的代码)

                      提高代码的可重用性、可维护性

    2、如何定义无参方法 _方法命名遵循骆驼命名法

                       public 返回类型 方法名( ){

                                                          //……………方法体

                       }

    3、根据返回类型,无参的方法,分为2种

                      3.1 有返回类型(数据类型),方法体中,必须出现

    return 【表达式、变量、值】,return 写在方法中最后一行

                      3.3 没有返回类型,在定义方法时,返回类型写void,没有return语句,

    输出结果(System.out.println)

    4、方法的调用—

    l  调用其他类的方法:对象名.方法名();

    l  同一个类中,方法之间的调用:方法名();

          4.1 无返回类型

                                              对象名.方法名();//输出数据

          4.2 有返回类型

                                              数据类型 变量名=对象名.方法名();

                                              System.out.println(变量名);

                                              或        System.out.println( 对象名.方法名() );

    四、面向对象的3大特征:封装、继承、多态

    public class shangji3 {
        //登陆菜单
        public void showMenu(){
            System.out.println("
    	欢迎使用我行我素购物管理系统
    ");
            System.out.println("		1.登陆");
            System.out.println("		2.退出");
            System.out.println("* * * * * * * * * * * * * * * * * * * *");
            System.out.print("请选择:");
        }
        //主菜单
        public void mainMenu(){
            System.out.print("	我行我素购物管理系统主菜单");
            System.out.println("* * * * * * * * * * * * * * * * * * * *");
            System.out.println("		1.客户信息管理");
            System.out.println("		2.真情回馈");
            System.out.println("* * * * * * * * * * * * * * * *  * * * * * * * * * *");
            boolean con;
            Scanner input=new Scanner(System.in);
            System.out.print("请选择,输入数字或按0返回上一级菜单:");
            int no=input.nextInt();
            do{
                con=false;
                //输入数字,选择菜单。
            switch (no){
            case 1:
                custMenu();
                break;
            case 2:
                sendMenu();
                break;
            case 0:
                mainMenu();
                break;
            default:
                System.out.println("请输入正确的数字!");
                con=true;
                break;
            }
            }while(con);
        }
        public void sendMenu(){
            System.out.print("	我行我素购物管理系统 > 真情回馈");
            System.out.println("* * * * * * * * * * * * * * * *  * * * * * * * * * *");
            System.out.println("
    		1.幸运大放送");
            System.out.println("
    		2.幸运抽奖");
            System.out.println("
    		3.生日问候");
            System.out.println("* * * * * * * * * * * * * * * *  * * * * * * * * * *");
            boolean com;
            do{
                com=false;
            //输入数字,选择菜单
            Scanner input=new Scanner(System.in);
            System.out.print("请选择,输入数字或按0返回上一级菜单:");
            int no= input.nextInt();
            switch (no){
            case 1:
                System.out.println("执行幸运大放送");
                break;
            case 2:
                System.out.println("执行幸运抽奖");
                break;
            case 3:
                System.out.println("生日问候");
                break;
            case 0:
                mainMenu();
                break;
            default:
                System.out.println("请输入正确的数字");
                com=true;
                break;    
            }
            }while(com);
        }
        public void custMenu(){
            
        }
    }
    public static void main(String [] args){
            shangji3 f=new shangji3();
            //显示菜单
            f.showMenu();
            //实现菜单
            boolean d=true;
            do{
            Scanner input =new Scanner(System.in);
            int choice=input.nextInt();
            switch (choice){
            case 1:
                f.mainMenu();
                break;
            case 2:
                System.out.println("谢谢您的使用!");
                d=false;
                break;
            }
            }while(d);
        }
    public static void main(String [] args){
            shangji1 s=new shangji1();
            Scanner imput=new Scanner(System.in);
            System.out.print("请输入Java的成绩:");
            s.java=imput.nextInt();
            System.out.print("请输入c的成绩:");
            s.c=imput.nextInt();
            System.out.print("请输入db的成绩:");
            s.db=imput.nextInt();
            s.showScore();
            s.cuAvge();
        }

    5、Java中的包(package)

                      5.1 包,对应到磁盘中的文件夹

                      5.2 新建一个class,默认保存在缺省包中

                     5.3 声明包的关键字:package

                                                                      package语句,置顶位置

                      5.4 导入包的关键字:import

                                                                      import 包名.类名(*表示所有);

                      5.5 作用:

    l  分类存放,解决同名冲突

    l  分类存放,方便查找和管理

    5.6 命名规范——参考教材

    6、有参数的方法

                      6.1 如何声明

                                  public 返回类型 方法名(数据类型 参数名){

                                              ….方法体

                                  }

                      6.2 分为2类

                                  6.2.1 无返回类型——void

                                  6.2.2 有返回类型

    l  基本数据类型

    l  自定义类——return 类的对象;

    l  数组——return 数组名;

    6.3参数的类型

    l  基本数据类型(10-31)

    l  自定义类——传递的是类的对象

    l  数组——只需要传递 【数组名】

    6.4调用

    6.4.1在当前类中调用——方法名(值列表);

    6.4.2在其他类中调用——对象名.方法名(值列表);

    package Pack1;
    
    public class No3 {
        String names[]=new String[30];
        public void addName(String name){
            for (int i=0;i<5;i++){
                names[i]=name;
                if(i==5){
                    System.out.println(names[i]+"");
                }
            }
        }
        public void showName(){
        
        }
    }
    package Pack2;
    import Pack1.No3;    //导入包
    import java.util.*;
    public class No1 {
        public static void main(String [] args){
            No3 d=new No3();
            Scanner input=new Scanner(System.in);
            for(int i=0;i<5;i++){
                System.out.print("请输入学生姓名:");
                String newName=input.next();
                d.addName(newName);//调用方法并传实参
            }
            d.showName();
        }
    }

    7、方法总结

    分类:

    1、            无返回类型,无参数

    2、            无返回类型,有参数

    3、            有返回类型,无参数

    4、            既有返回类型,又有参数

    参数或返回类型,可以是常用的数据类型,也可以是自定义的类或数组

  • 相关阅读:
    爬取网页图片
    python 猜数字游戏
    位移运算
    生成随机的名字
    不截半个汉字
    一致性hash的实现
    安装前端脚手架
    什么是快速排序?
    HTML5有趣的标签
    stopPropagation / stopImmediatePropagation
  • 原文地址:https://www.cnblogs.com/xykwh/p/6964547.html
Copyright © 2011-2022 走看看