Java基础笔记---《面向对象

Java基础笔记---《面向对象,第1张

文章目录
  • 开发工具
  • IDEA界面介绍
  • IDEA的使用
  • IDEA快捷键
  • 访问修饰符
  • 面向对象
  • 封装

开发工具

目前国内互联网公司绝大多数都在用IDEA,Eclipse进行Java开发。

  • IDEA
  • Eclipse
IDEA界面介绍

IDEA使用项目(project)来管理我们的源代码。

IDEA的使用

/**
 * @author 进阶的刘同学
 * @version 8.0
 */
public class ArrayTest {
    public static void main(String[] args) {
        MyTools myTools = new MyTools();
        int[] arr = {1, 31, 2, 12, 9};
        myTools.bubble(arr);
        System.out.println("===冒泡排序后的arr数组==");
        for(int i = 0; i < arr.length; i++) {
            System.out.print(arr[i] + "\t");
        }
    }
}
class MyTools {
    public void bubble(int[] arr) {
        int temp = 0;
        for (int i = 0; i < arr.length - 1; i++) {
            for (int j = i; j < arr.length - 1 - i; j++) {
                if(arr[j] > arr[j + 1]) {
                    temp = arr[j];
                    arr[j] = arr[j + 1];
                    arr[j + 1] = temp;
                }
            }
        }
    }
}


IDEA快捷键

1.删除当前行: ctrl + d 。
2.复制当前行: ctrl + alt + 向下箭头 。
3.代码补全: alt + / 。
4.添加单行注释: 选中代码,ctrl + / ,第一次是添加注释,第二次是取消注释。
5.添加多行注释,选中代码,ctrl + shift + /,第一次是添加注释,第二次是取消注释。
6.导入类: alt + Enter 。
7.格式化代码: ctrl + alt + L 。
8.快速运行: alt + R 。
9.快速生成构造器:alt + Insert 。
10.查看类的层级关系: ctrl + h 。
11.快速定位方法: ctrl + B 。
12.自动分配变量名: 在后面加 .var ,然后按回车 。

  • 模板快捷键

模板:就是一写固定的格式,固定的语句。

IDEA提供了一些模板快捷键,快速生成模板,提高开发效率:
1.main,然后回车: public static void main(String[] args) { }
2.sout,然后回车:System.out.println();
3.fori,然后回车:for (int i = ; i < ; i++ ) { }

  • 为什么需要包

  • 包的作用:
    1.区分名字相同的类。
    2.类很多,很多的管理类。
    3.控制访问范围(访问修饰符)。

  • 包可以很好的管理类的体现。
    1.api

    2.jdk源码

  • 包的基本语法

package 包名,例如package com.xiaowang;
说明:

  1. package是关键字,表示打包,把类进行打包。
    2.com.xiaowang表示包名。
  • 包的本质

创建不同的文件夹/目录来保存类文件。

  • 快速入门

使用包来解决小明和小强的问题

  • 包的命名
  • 常用包
  1. java.lang : 基本包,默认引入,不需要引入,里面的类Math,System,String。
  2. java.util: 系统提供的工具包,里面有工具类,例如:Scanner。
  3. java.net: 网络包,网络开发的
  4. java.awt: 用java做界面开发的,GUI。
  • 包的导入(引入)

比如导入一个Scanner类:
1.import java.util.Scanner;只导入java.util包下的Scanner类。
2.import java.util.*;导入java.util包下的所有类。
推荐第二种,java源码的设计者也是这样,用哪个类就导入哪个类。

  • 包的使用实例
    使用Arrays类完成数组排序

  • 包的细节

1.package 语句位于类文件的最上方,最多只能有一句。
2.import 语句位于package语句之下,类定义之上,可以有多句,且顺序无要求。

访问修饰符
  • 定义

java提供了四种访问控制修饰符号来控制属性和方法,类的访问范围和权限。

  • 属性和方法的4种访问修饰符的访问范围
  • 4种访问修饰符(类和属性)的具体使用

说明:涉及到子类的修饰符,由于涉及到继承,现在不讨论。

package com.ltx.modifier;

/**
 * @author 进阶的刘同学
 * @version 8.0
 */
public class A {
    //四种访问修饰符修饰的属性
    public int n1 = 100;
    protected int n2 = 200;
    int n3 = 300;
    private int n4 = 400;
    //同类可以访问public,protected,默认,private修饰的属性和访问,方法和属性一样
    //这里只列举属性的例子,方法和属性访问规则一样
    public void m1() {
        System.out.println("n1=" + n1 + " n2=" + n2 + " n3=" + n3 + " n4=" + n4);
    }
}
package com.ltx.modifier;

/**
 * @author 进阶的刘同学
 * @version 8.0
 */
public class Test {
    public static void main(String[] args) {
        A a = new A();
        a.m1();
        B b = new B();
        b.m();
    }
}

package com.ltx.modifier;

/**
 * @author 进阶的刘同学
 * @version 8.0
 */
public class B {
    public void m() {
        A a = new A();
        //同一个包能访问public,protected,默认修饰的属性和方法
        //但不能访问private 修饰的属性和方法
        System.out.println("n1=" + a.n1 + " n2" + a.n2 + " n3=" + a.n3);
    }
}
package com.ltx.pkg;

import com.ltx.modifier.A;

/**
 * @author 进阶的刘同学
 * @version 8.0
 */
public class Test {
    public static void main(String[] args) {
        A a = new A();
        //不同包能访问public 修饰的属性和方法
        //不能访问protected,默认,private修饰的属性和方法
        System.out.println("n1=" + a.n1 );
    }
}

  • 类的访问修饰符

类的访问修饰符只有:public 和 默认的。

面向对象

面向对象三大特征:封装,继承,多态。

封装
  • 定义

把数据做成属性,把对数据的 *** 作封装为方法。
典型的对电视的 *** 作就是封装。

  • 封装的好处

1.隐藏了实现细节。
2.可以对数据进行验证,保证安全合理。
例子:
Person p = new Person();
p.age = 1200;//人能活1200岁吗?

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/801790.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-07
下一篇 2022-05-07

发表评论

登录后才能评论

评论列表(0条)

保存