//一个教务管理系统
//知识点清单
/*
public & private 的区别
一个是公开的,一个是私有的,作用域不一样,访问的权限不一样咯
如果是用private修饰,则调用者只可以是在当前的作用域,一个类里边的。
private的其中一个作用
修饰一个类中的变量,为了规则输入,可额外设计一个public公开的方法改变数值,附加校验的功能

*/

/*
构造方法(构造器)
例如这条语句 : Student std = new Student();
Student();虽然你没有定义这个方法,但是系统帮你提供了,你也可以自己弄
你还可以构造多个构造方法,区别在于参数不同

*/

/*
this关键字 在类中使用
相当于把class根层作为出发点去寻找变量
作用1
比如在类中有一个a的变量,类中的方法中也有一个a的变量,在该方法中使用方法外面的变量则this.a即可。
作用2
代表当前的对象

*/

/*
对象属性私有化
将对象使用private修饰,如果需要访问,只需构造一个方法return即可.
public String getName(){
    return name;
}
这样相当于“只读”。相当于《封装》。

*/

/*
static关键字
修饰成员变量,成员方法。
好处是:节约内存,一般是高频使用的不需要修改的常量,类似于const
栈 堆 方法区(含有静态区)
静态变量:存储在静态区,只要是用到了这个类,则不同对象都是调用同一个内存区域。
        即使你没有创建这个类的对象,你也可以直接访问到这个类的静态变量和静态方法

静态方法:因为也是存储在静态区里的,只有一份,所以静态方法是不能访问非静态变量的

main就是静态方法

*/

/*
main的静态方法通过java命令传递参数
DOS:java Learn04 第一个参数 第二个参数 ...
则存储在args中

*/

public class Learn04 {
    public static void main(String[] args){
        Student std = new Student();
        //Student std = new Student("张杰",19,"929252",'男');
        //std.show();
        
        for (String ss : args){
            System.out.println(ss);
        }
        
    }
    
}
class Student{
    public static String static_country;
    String name;
    int age;
    String id;
    char gender;
    public Student(){
        System.out.println("没有参数的构造方法被调用了!");
    }
    public Student(String n,int a ,String i,char g){
        name = n;
        age = a ;
        id = i;
        gender = g;
        System.out.println("有参数的构造方法被调用了!");
    }
    public void show(){
        System.out.println(name + "\n" + age + "\n" + id + "\n" + gender + "\n" );
        
    }
}

【java】学习路线5-public和private、构造方法、this关键字、封装对象、static关键字、main方法结构解析的更多相关文章

  1. Java学习笔记(4)----Public,Protected,Package,Private修饰符可见性

    Java修饰符类型(public,protected,private,friendly) public的类.类属变量及方法,包内及包外的任何类均可以访问:protected的类.类属变量及方法,包内的 ...

  2. 最新java学习路线:含阶段性java视频教程完整版

    最新java学习路线:带阶段性java视频教程版本 第一阶段:Java基础 学习目标: 掌握基本语法.面向对象.常用类.正则.集合.Io流.多线程.Nio.网络编程.JDK新特性.函数式编程 知识点细 ...

  3. 【Todo】Java学习路线(方向指导)

    在网上搜了下Java学习路线(关键词:学习,因为众所周知,实践出牛人,在平时工作不怎么深入的情况下,才强调学习的方向的重要性 ^_^) 发现下面知乎这个回答写的真好.mark如下: https://w ...

  4. 分享篇——我的Java学习路线

    虽然之前我是开发出身,但是我学习的语言是Objective-c,这个语言使用起来范围比较窄,对于自动化学习来说也是无用武之地,所以我自己学习了Java,对于一个有开发经验的人来说学习一门新语言相对来说 ...

  5. JAVA修饰符类型(public,protected,private,friendly)

    转自:http://www.cnblogs.com/webapplee/p/3771708.html JAVA修饰符类型(public,protected,private,friendly) publ ...

  6. java学习路线(好资源大家分享)

    对于入门java将近两年的时间,曾经迷惘过,一直想知道java的具体学习路线,看过了许许多多的java经验分享的帖子,评论,以及其他各种培训机构所谓的学习路线,发现没有一个符合我个人需求的学习路线,根 ...

  7. JAVA类型修饰符(public,protected,private,friendly)

    JAVA类型修饰符(public,protected,private,friendly) public的类.类属变量及方法.包内及包外的不论什么类均能够訪问:protected的类.类属变量及方法,包 ...

  8. 一份最中肯的Java学习路线+资源分享(拒绝傻逼式分享)

    这是一篇针对Java初学者,或者说在Java学习路线上出了一些问题(不知道该学什么.不知道整体的学习路线是什么样的) 第一步:Java基础(一个月左右) 推荐视频: 下面的是黑马内部视频,我比较推荐的 ...

  9. 【强烈推荐】可能是最适合你的 Java 学习路线和方法

    如遇链接无法打开,建议使用 https://github.com/Snailclimb/JavaGuide/blob/master/docs/questions/java-learning-path- ...

随机推荐

  1. 【Spring】AOP实现原理(三):创建代理

    AbstractAutoProxyCreator 在AbstractAutoProxyCreator的wrapIfNecessary方法中,调用getAdvicesAndAdvisorsForBean ...

  2. 程序分析与优化 - 7 静态单赋值(SSA)

    本章是系列文章的第七章,终于来到了鼎鼎大名的SSA,SSA是编译器领域最伟大的发明之一,也是影响最广的发明. 本文中的所有内容来自学习DCC888的学习笔记或者自己理解的整理,如需转载请注明出处.周荣 ...

  3. SimpleMarkDown编辑器离线版以及桌面应用版上线

    之前,我们开发了Web版本SimpleMarkDown编辑器.今天,我们又推出了离线版和桌面应用版. 主要功能: 页面简约: 实时保存: 一键清空内容: 支持微信公众号.知乎.稀土掘金.CSDN等多个 ...

  4. Vue回炉重造之搭建考试答卷系统

    本篇章主要讲述系统搭建逻辑,有疑问的可以加微信联系我.考试系统 资源 Vue.js Element UI 第三方数据接口 业务 答题过程中,防止用户中途退出或者其他不可抗力因素阻碍答题,在每次选择都要 ...

  5. 不可思议的返回功能——python

    今天给大家分享 3 个比较冷门的知识.教程点这(https://jq.qq.com/?_wv=1027&k=zLK3I0M5) 第一个:神奇的字典键 (https://jq.qq.com/?_ ...

  6. docker实时查看日志

    docker logs -f --tail=10 fo-order -f : 查看实时日志 --tail=10 : 查看最后的10条日志. fo-order: 容器名称

  7. NC204382 中序序列

    NC204382 中序序列 题目 题目描述 给定一棵有 \(n\) 个结点的二叉树的先序遍历与后序遍历序列,求其中序遍历序列. 若某节点只有一个子结点,则此处将其看作左儿子结点 示例1 输入 5,[3 ...

  8. javascript基本属性访问对象的属性和方法

    var myName = "Shelley"; //字符串基本类型 alert(myName.length);  //隐式创建String对象,数值与myName相同,并执行len ...

  9. Selenium指定浏览器路径

    ChromeOptions options = new ChromeOptions(); options.setBinary("C:\\Program Files (x86)\\Google ...

  10. nexus org.sonatype.nexus.bootstrap.jetty.JettyServer - Start failed

    INFO [jetty-main-1] *SYSTEM org.sonatype.nexus.bootstrap.jetty.JettyServer - Runningjvm 1 | 2020-04- ...