1.5.1抽象java入门

前言:

1.5.0版本中,我们熟练使用Git三个可视化操作(签出,提交,对比),再加上1.4.0版本的新建,总计使用四个Git可视化操作;对java编程的学习,总结,更进一步验证了编程语言和自然语言极高的相识程度,即文字是文章的基础,java基础是java生态的基础(第一个接触的框架SpringBoot)

本期内容:

1:利用工具更轻松的分辨静态方法(类函数)和方法(函数)的区别

2:面向对象编程

3:java文件分类

1:利用工具更轻松的分辨静态方法(类函数)和方法(函数)的区别

先回顾一下,方法和静态方法

方法公式3.0版本

方法 = 权限修饰符 + 返回值类型 + 函数名 + 参数 + 函数体

静态方法 = 权限修饰符 + 类修饰符 + 返回值类型 + 函数名 + 参数 + 函数体

区分是否为静态方法(函数)的唯一标准,是否被类修饰符修饰

一伙静态方法,一伙静态函数,一伙类方法,一伙类函数,乱七八糟,好烦好闹心~~~

Q:方法与函数

A:方法和函数两个名词,这两个名词所描述的操作是相同的,所以在大体上是不需要做太大区分

Q:静态和类是什么关系

A:静态修饰的是类的内容,所以作者我为了更直接点,直接管静态方法为类方法

如何利用IDEA功能优雅的区分呢?

假设,你是IDEA的一位开发人员,你的上司给你一个任务

在提示框上要让用户知道他调用的是静态的方法还是非静态的方法

真的假的,让我来做?

跟着我们不一样的java入门的人,肯定知道,怎么写

我又没让你用代码实现,用自然语言将逻辑理清

第一步:获取用户输入的类

第二步:根据获取类的地址,获得类的全部内容

第三步:判断这些内容是否带有类修饰符,如果有,你打算怎么让用户知道

高亮?加粗?不一样的颜色?还是什么?让我们看看idea开发人员是怎么做的

验证:

第一步:新建一个java类

第二步:

java 复制代码
public class user {

    public void NoStatic() {
        System.out.println("我不是静态方法");
    }

    public static void IsStatic() {
        System.out.println("我是静态方法");
    }
}

第三步调用:

可以直接通过类调方法,这也是为什么我管它叫------类方法

我们通过类去调用非静态方法时,是会报错的

2:面向对象编程

类方法是类本身的属性,在最开始的文章中,有一种特殊的方法(函数),每一个类里面都有它,它的名字叫什么?

复习一遍 ------ 构造函数(construct-or) 即构造,执行

构造函数 = 公共权限 + 类名 + 参数 + 函数体

执行构造对象的函数(方法)

这个函数的作用是构造对象,那么没有Static修饰符的方法那都属于对象

类方法,我们可以直接使用类名调用

方法呢?方法需要对象才能调用,可是创建对象需要构造方法,构造方法怎么调用呢?

只要知道构造方法怎么调用,自然而然的方法就知道怎么被调用

先学会第一种方法,------ 利用new关键词进行构造方法的调用

我们的对象没办法调用类方法

那么到这里,你应该就知道IDEA开发是怎么做的了,如下(极简版)

心细的人会发现

代码有粗细,下面的equals,toString这些方法我们没有定义怎么有的,右边的灰色字体void又是什么?

先留个坑,提升一下,这些细字体是面向对象中的一个特性,void是函数公式里的一个元素

3.java文件分类

5种,目前我们接触到了两种

总结:为什么要分清类方法和方法的区别,因为后面会去读源码,写源码,能分清这些,你就知道为什么这个地方官方或者作者用了new关键字,而不是直接调用,明明同一个文件里,却看不到别的方法,为什么作者没有用new,也实现了构造对象的方法

面向对象编程,是最能体现编程语言向自然语言发展的核心验证点,在这里我们只提到看对象这一概念,却不知道它有什么用?为什么会出现对象?也没有进行说明

java文件分类,依旧是为了后续读源码做准备,大概在1.8.0版本,我们会开始读源码,读大佬写的源码,去模仿大佬写的源码,去理解分析大佬怎么写源码的

相关推荐
努力的八爪鱼8 分钟前
记录工作中遇到的问题(持续更新~)
java
求学小火龙10 分钟前
ElasticSearch介绍+使用
java·大数据·elasticsearch
mikey棒棒棒12 分钟前
算法练习题25——合并多项式
java·算法·hashmap·哈希·多项式
学步_技术13 分钟前
Python编码系列—Python工厂方法模式:构建灵活对象的秘诀
开发语言·python·工厂方法模式
kimloner14 分钟前
工厂模式(二):工厂方法模式
java·设计模式·工厂方法模式
月临水23 分钟前
JavaEE:网络编程(UDP)
java·网络·udp·java-ee
Deryck_德瑞克30 分钟前
Java集合笔记
java·开发语言·笔记
MengYiKeNan35 分钟前
C++二分函数lower_bound和upper_bound的用法
开发语言·c++·算法
孟诸40 分钟前
计算机专业毕设-校园新闻网站
java·vue·毕业设计·springboot·课程设计
会发paper的学渣41 分钟前
python 单例模式实现
开发语言·python·单例模式