成为Java程序员Day7:面向对象进阶

面向对象进阶

封装

利用private 让属性和方法只能类内使用
外部要查看只能利用类内可见方法使用

this 关键字

this 可以 调用类中的 属性 调用类中方法和构造方法 代表 当前对象
–在构造方法中调用另一构造方法,调用的构造方法的代码必须放置在第一行
因为先构造对象才能执行类中的方法

Static 关键字

Static 静态 静态属性
简单来说这个修饰符 就是将这个变量储存在方法区内 让他和类的实例化的无关
静态不能访问非静态,非静态可以访问静态。

package包

1 把类放在这个东西内 , 用于查找和使用
2 包和文件夹差不多,不同包中的类的名字是可以相同的,但是同时调用两个不同包中同名的类时,应该加上包名的区别,因此,包可以避免名字冲突。(真就和包名差不多 查包内类和查文件夹里面的东西的时候 都是查路径 )
3 包限定了访问权 ,拥有包访问权限的类才能访问某个包中的类
可以访问的话 只要写全路径都可以使用
java.until.Scanner scanner = new java.until.Scanner(); 也可以实例化

Import 关键字

Import 包名,类名;

权限修饰符

                   同类            同包            子类             其他包
   Public          可以            可以            可以              可以
   Protected       可以            可以            可以             不可以
   Default         可以            可以           不可以            不可以
   Private         可以            不可以          不可以           不可以

代码块

普通代码块
构造代码块
静态代码块
同步代码块

面试题:

构造方法 与 构造代码块 以及 静态代码块的执行顺序
静态代码块 --> 构造代码块–> 构造方法

//构造代码块 无论用户用哪个构造方法构造对象 代码块 都会执行 且构造代码块
{
System.out.ptintln{“对象创建执行1”};
}

//构造代码块 和 构造方法每一次创建对象都会执行 而静态代码块只会执行一次
//因为类只加载一次 所以静态代码块只构造一次

main方法详细解析

main:方法是程序的入口,jvm只认识这个。
public :权限修饰符,表示公共内容。
static:表示方法是静态的,可以由类名直接调用。
String[] args;字符串数组,接受参数的。

任务概述

Book

package com.kaikeba.Day6LevelUp;

public class Book {
    String title;
    int pageNum = 200;

    public void detail(){
        System.out.println("书名:"+title+"页数"+pageNum);
    }
}

Book测试

package com.kaikeba.Day6LevelUp;

public class BookText {
    public static void main(String[] args) {
        Book book = new Book();
        book.detail();
        book.title = "钢铁是咋整的";
        book.pageNum = 250;
        book.detail();
    }
}

Clothes

package com.kaikeba.Day6LevelUp;

public class Clothes {
    String name;
    String type;
    int size;
    String brand;
    String color;
    private static int num=1;
    private int number = 1;


    Clothes(){
        this.number=Clothes.num; //创建时赋值
        Clothes.num++;
    }

    public int getNumber() {
        return number;
    }
}

Clothes测试

package com.kaikeba.Day6LevelUp;

public class text {
    public static void main(String[] args) {
        Clothes clothes = new Clothes();

        System.out.println(clothes.getNumber());

        Clothes clothes1 = new Clothes();

        System.out.println(clothes1.getNumber());

    }
}

开课吧Java学员】

package com.kaikeba.Day6LevelUp;

public class KaikebaJavaStudent {
    static String name;
    int age;
    String gendet;
    String hobby;
    static String company = "kaikeba";
    static String subject = "Java码农";


}

小结 :

学习Java,一定要改变思维。
面向对象:简单点说 , 就是定义一个东西,让他有去干活。
封装:用private权限修饰符修饰,限定类内元素才能访问,用公共元素链接类外。
this关键字:在类内,为定义的时候用来表示实例,就是具体东西。
static关键字:就是让类内有一个不受类内方法影响的变量或方法,因为static修饰的东西存储在方法区内。
import关键字:调包 就是在包外访问包内的东西
权限修饰符:说的明白,就是你没权看我包里东西。有权才可以看。我怎么定义,你什么权限看什么东西。
package包:还真就像文件夹,但是包也是访问时候的一堵墙。
代码块:就是一堆代码,{}之内的东西称为代码块。
好玩的东西是
构造方法代码块
{
//什么修饰符都没有,而且执行要在构造方法之前,就好像猪肉出厂之前给他打个印章
}

main方法:main是jvm进入的地方,他在这里工作根据我们给出的条件工作。

============================================================================
鲤鱼学编程
现在第七天
个人看法
多多指教

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值