方法的定义
  1.  package oop.demon01;
     
     //Demon01 类
     public class Demon01 {
         
         //main 方法
         public static void main(String[] args) {
             
        }
         /*
         修饰符 返回类型 方法名(。。。。){
             //方法体
             return 返回值;
         }
       
         如果返回值是 void ----- return ; (空)
          */
         //return 结束方法,返回一个结果
         public String sayHello(){
             return "hello,world";
        }
         
         public int max(int a, int b){
             return a>b ? a : b;//三元运算符
        }
     }
     
方法的调用(静态 、非静态)
  1.  package oop.demon01;
     
     public class Demon02 {
     
         public static void main(String[] args) {
             //实例化这个类
             //new Student().say();   一般用下面的表示法
             //对象类型 对象名 = 对象值
             Student student= new Student();//实例化
             student.say();//对象名.方法
        }
     
     }
     
     // 方法调用
     //静态方法 static : 类名.方法名 Student.say();
     
     
     //非静态方法 (之前的scanner)
     /*
     实例化这个类(new)
     对象类型 对象名 = 对象值
     Student student= new Student();//实例化
             student.say();//对象名.方法
      */
形参和实参(实际参数的类型和形式参数的类型要一一对应!)
  1.  //非静态调用
     package oop.demon01;
     
     public class Demon03 {
         public static void main(String[] args) {
             //int ans=new Demon03().add(1,2);
             Demon03 demon03=new Demon03();
             int ans=demon03.add(1,2);
             System.out.println(ans);// 3
        }
     
         //                 a,b 为形参
         public int add(int a,int b){
             return a+b;
        }
     }
     
     //静态调用
     package oop.demon01;
     
     public class Demon03 {
         public static void main(String[] args) {
             int ans=Demon03.add(1,2);
             System.out.println(ans);
        }
     
         //                 a,b 为形参
         public static int add(int a,int b){
             return a+b;
        }
     }
     
     
     
值传递和引用传递
  1.  package oop.demon01;
     // 值传递
     public class Demon04 {
         public static void main(String[] args) {
             int a = 1;
             System.out.println(a); // 1
     
             Demon04.change(a);
             System.out.println(a); // 1
        }
     
         // 返回值为空                 形参
         public static void change(int a){
             a=10;
        }
     }
     
     
     package oop.demon01;
     
     // 引用传递:传递一个对象,本质还是值传递
     public class Demon05 {
         public static void main(String[] args) {
             Person person=new Person();
             System.out.println(person.name);//null
             Demon05.change(person);
             System.out.println(person.name);//wentaotao
     
     
        }
         public static void change(Person person){
             //person是一个对象:指向的---》Person person = new Person(); 这是一个具体的人,可以改变属性
             person.name = "wentaotao";
        }
     
     }
     
     // 定义了一个Person类,有一个属性:name
     class Person{
         String name;//nall
     }

学习内容源自视频:b站狂神说Java

Java面向对象02——回顾方法(定义、调用)及加深的更多相关文章

  1. # 095 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 03 封装总结 01 封装知识点总结

    095 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  2. 092 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 02 static关键字(中)

    092 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  3. 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 02 封装的代码实现

    088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 02 封装的代码实现 本文知识点:Java封装的代码实现 说明:因为时间紧张,本人写博客过程中只 ...

  4. 094 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 04 static关键字(续)

    094 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  5. 091 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 01 static关键字(上)

    091 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  6. 090 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 04 使用包进行类管理(2)——导入包

    090 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  7. 089 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 使用包进行类管理(1)——创建包

    089 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  8. 中文乱码在java中URLEncoder.encode方法要调用两次解决

    中文乱码在java中URLEncoder.encode方法要调用两次解决 一.场景: 1.我在客户端要通过get方式调用服务器端的url,将中文参数做utf-8编码,需要在js中两次的进行编码,服务器 ...

  9. 093 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 03 static关键字(下)

    093 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

随机推荐

  1. 阿里P7大佬带你解密Sentinel

    概述 在接连写了两篇关于限流的文章(<面试补习>- 你来说说什么是限流?, 限流神器Sentinel,不了解一下吗?)后,总感觉还差最后一点内容来闭环整个限流相关的内容,这两天在翻查相关文 ...

  2. LAMP——实现phpMyadmin、wordpress及Discuz应用部署

    一.环境准备 操作系统:Centos8.3.2011 软件:Apache2.4.37.Mysql8.0.21.PHP7.2.24 二.安装过程 1.安装phpmyadmin 1.1.安装软件包并启动服 ...

  3. sonarqube 8.9版本配置项目访问权限

    soanrqube设置项目权限 admin->项目->要设置的项目 进行项目权限配置 选择权限 权限配置(公开,私有)如果是公司项目建议选择私有 根据项目团队成员的角色需求,进行勾选配置 ...

  4. CentOS-自定义SFTP用户及目录

    ftp功能说明:通过SSH启动CentOS的sftp功能 创建用户组及用户(sftp可变) $ groupadd sftp $ useradd -g sftp -s /sbin/nologin -d ...

  5. linux之软连接 硬链接 link ln

    p.p1 { margin: 0; font: 12px "Helvetica Neue"; color: rgba(220, 161, 13, 1) } p.p2 { margi ...

  6. 我是如何用redis做实时订阅推送的(转)

    前阵子开发了公司领劵中心的项目,这个项目是以redis作为关键技术落地的.       先说一下领劵中心的项目吧,这个项目就类似京东app的领劵中心,当然图是截取京东的,公司的就不截了...   其中 ...

  7. 整理C#获取日期显示格式

    C#获取当前日期的几种显示格式 有时候需要用一些不常用的日期格式时,总是要去网上查找,很多都是复制粘贴,还不完整.就整理一下. DatetimeTextBox.Text += DateTime.Now ...

  8. DRF之JWT认证

    一.JWT认证 JWT构成 JWT分为三段式:头.体.签名(head.payload.sgin) 头和体是可逆加密的,让服务器可以反解析出user对象,签名是不可逆加密,保证整个token的安全性的. ...

  9. gitlab部署及汉化

    目录 Git 简介 部署 1. 配置yum源(推荐) 2. 安装 配置GitLab 1.加载配置 2.修改git默认访问端口 gitlab.rb unicorn.rb gitlab-http.conf ...

  10. Python----MongoDB数据库

    什么是MongoDB ? MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统. 在高负载的情况下,添加更多的节点,可以保证服务器性能. MongoDB 旨在为WEB应用提供 ...