zoukankan      html  css  js  c++  java
  • JAVA核心技术I---JAVA基础知识(函数)

    一:自定义函数

    由于JAVA中都是由类组成,所以想实现类似于函数的功能,直接使用main主函数进行调用,就需要使用静态类方法,直接调用,而不需要实例对象
    public class HelloWorld {
        public static int a=15;    //成员变量
        
        public static int func(int b) {    //成员方法
            a+=b;
            return a;
        }
        
        public static void main(String[] args) {
            int b=13;
            b=func(b);  //或者HelloWorld.func(b)
            System.out.println(b);     //28
            
            TestFunc.say();
            
        }
    }
    
    //public class TestFunc出现两个public在同一个java文件中是错误的
    class TestFunc{  //默认是default类型
        public static void say() {
            System.out.println("I come from TestFunc");
        }
    }
    1.函数必须放在类的范围内• 修饰词(public 或者 static) 返回值(int 或者void),函数名(形参列表) {函数体}
    2.通常情况下,我们都建议方法是public。
    3.函数可以调用其他的函数,例如上例中,main函数调用了add函数。
    4.递归函数调用,需要注意终止性。
    5.同一个类中,函数名称可以相同,即重载函数(overload),但是函数参数的个数或者类型必须有所不同
    6.不能以返回值来区分同名的函数
    public class HelloWorld {
        public static int a=15;    //成员变量
        
        public static int func(int b) {    //成员方法
            a+=b;
            return a;
        }
        
        public static void func() {    //成员方法  //重载,主要区别是传参不同,函数名一致
            System.out.println("overwrite");
        }
        
        public static void main(String[] args) {
            int b=13;
            b=HelloWorld.func(b);
            System.out.println(b);     //28
            HelloWorld.func(); //overwrite
            TestFunc.say();
        }
    }

    二:补充类的类型

    默认的是default 不需要书写

    public:

    Java语言中访问限制最宽的修饰符,一般称之为“公共的”。被其修饰的类、属性以及方法不仅可以跨类访问,而且允许跨包(package)访问。

    private: 

    Java语言中对访问权限限制的最窄的修饰符,一般称之为“私有的”。被其修饰的类、属性以及方法只能被该类的对象访问,其子类不能访问,更不能允许跨包访问。

    protect: 

    介于public 和 private 之间的一种访问修饰符,一般称之为“保护形”。被其修饰的类、属性以及方法只能被类本身的方法及子类访问,即使子类在不同的包中也可以访问。

    default:(不同于C++的地方)

    即不加任何访问修饰符,通常称为“默认访问模式“。该模式下,只允许在同一个包中进行访问。

    三:作业

    请实现程序输出以下5*5数字方格。
    
    1   2   3   4   5
    
    6   7   8   9   10
    
    11  12  13  14  15
    
    16  17  18  19  20
    
    21  22  23  24  25
    
    需要在main函数的输入参数中设置5,输出5*5的数字方格。如果是输入7,则是7*7的数字方格。
        public static void main(String[] args) {
            int count=0;
            Scanner in=new Scanner(System.in);
            count=in.nextInt();
            for(int i=1;i<=count*count;i++) {
                System.out.printf("%5d",i);
                if(i%count==0) {
                    System.out.println();
                }
            }
        }
    7
        1    2    3    4    5    6    7
        8    9   10   11   12   13   14
       15   16   17   18   19   20   21
       22   23   24   25   26   27   28
       29   30   31   32   33   34   35
       36   37   38   39   40   41   42
       43   44   45   46   47   48   49
  • 相关阅读:
    关于添加类目
    关于协议传值
    Block传值
    UIImagePickerController(相册的使用)
    Handler(单例传值)
    UISearchController
    org.apache.commons.dbcp.SQLNestedException: Cannot load JDBC driver class 'com.microsoft.sqlserver.jdbc.SQLServerDriver '
    vs2015 打开项目自动运行 npm install
    Apktool下载与安装 windows环境
    React-Native 问题随记2: com.android.builder.testing.api.DeviceException
  • 原文地址:https://www.cnblogs.com/ssyfj/p/10188941.html
Copyright © 2011-2022 走看看