跳至主要內容
手把手教你用 C语言实现 Java native 本地方法

“三妹,之前我们学习了 Java 中的基本方法,其实 Java 还有一种方法,本地方法,或者叫 native 方法,它与之前的方法有很大的不同。”我放下手中的手机,扭过脸来对三妹说。

“听起来挺有意思的。”三妹很期待。

“我会教你用 C语言实现一个 native 方法。”我继续说到,“C语言是另外一种编程语言,你可以点这个链接去了解和学习。让我们开始吧”


沉默王二2023/3/6大约 8 分钟Java 核心面向对象编程
教妹学 Java:package 包

“三妹,这一节,我们简单过一下 Java 中的包,也就是 package,这个一点就透,很好掌握。”我放下手中的雪碧,翻开笔记本,登上 GitHub,点开《二哥的 Java 进阶之路》,找到这篇「Java 中的包」,开始滔滔不绝起来。

“二哥,你等一下。”让我打开思维导图做一下笔记📒。

关于包

在前面的代码中,我们把类和接口命名为PersonStudentHello等简单的名字。

在团队开发中,如果小明写了一个Person类,小红也写了一个Person类,现在,小白既想用小明的Person,也想用小红的Person,怎么办?


沉默王二2022/8/12大约 6 分钟Java 核心面向对象编程
聊聊Java封装:Java面向对象核心概念

“三妹,准备好了没,我们这节来讲 Java 封装,算是 Java 的三大特征之一,理清楚了,对以后的编程有较大的帮助。”我对三妹说。

“好的,哥,准备好了。”三妹一边听我说,一边迅速地打开了 XMind,看来一边学习一边总结思维导图这个高效的学习方式三妹已经牢记在心了。

封装从字面上来理解就是包装的意思,专业点就是信息隐藏,是指利用抽象将数据和基于数据的操作封装在一起,使其构成一个不可分割的独立实体

数据被保护在类的内部,尽可能地隐藏内部的实现细节,只保留一些对外接口使之与外部发生联系。

其他对象只能通过已经授权的操作来与这个封装的对象进行交互。也就是说用户是无需知道对象内部的细节(当然也无从知道),但可以通过该对象对外的提供的接口来访问该对象。


沉默王二2022/8/12大约 7 分钟Java 核心面向对象编程
聊聊 Java 多态

“三妹啊,前面聊完了 Java 的封装继承,今天我们来继续聊多态,也是 Java 三大特性的最后一个特性,搞懂它,Java 面向对象编程基本上就能轻松拿捏了。”我对三妹说。

“哥,你继续。”


沉默王二2022/8/11大约 6 分钟Java 核心面向对象编程
深入理解 Java 继承

“三妹,今天我们继续来学习 Java 的三大特征之一:继承,之前学习抽象类的时候我们已经接触过这个概念,不过,我们今天我们来认真地聊一聊。”慢吞吞说完这句开篇词后,我对三妹做了一个打开 XMind 的手势提醒(其实就是瞎比划)。

“懂了,哥,我这就打开。”三妹一边说,一边打开了 XMind,开始正襟危坐了起来。

在谈 Java 面向对象的时候,不得不提到面向对象的三大特征:封装继承多态。三大特征紧密联系而又有区别,合理使用继承能大大减少重复代码,提高代码复用性。


沉默王二2022/8/10大约 22 分钟Java 核心面向对象编程
和妹聊聊Java访问权限修饰符

“我们先来讨论一下为什么需要访问权限控制。其实之前我们在讲类和对象的时候有提到,今天我们来详细地聊一聊,三妹。”我开门见山地说,“三妹,你打开思维导图,记得做笔记哦。”

“好的。”三妹应声回答。

考虑两个场景:

场景 1:工程师 A 编写了一个类 ClassA,但是工程师 A 并不希望 ClassA 被其他类都访问到,该如何处理呢?

场景 2:工程师 A 编写了一个类 ClassA,其中有两个方法 fun1、fun2,工程师只想让 fun1 对外可见,也就是说,如果别的工程师来调用 ClassA,只可以调用方法 fun1,该怎么处理呢?


沉默王二2022/5/31大约 6 分钟Java 核心面向对象编程
聊聊Java内部类:成员内部类、局部内部类、匿名内部类、静态内部类

“在 Java 中,可以将一个类定义在另外一个类里面或者一个方法里面,这样的类叫做内部类。”我放下手中的枸杞杯,对三妹说,“一般来说,内部类分为成员内部类、局部内部类、匿名内部类和静态内部类。”

1)成员内部类

成员内部类是最常见的内部类,看下面的代码:

class Wanger {
    int age = 18;
    
    class Wangxiaoer {
        int age = 81;
    }
}

沉默王二2022/4/29大约 6 分钟Java 核心面向对象编程
Java抽象类,看这一篇就够了,豁然开朗

“二哥,你这明显加快了更新的频率呀!”三妹对于我最近的肝劲由衷的佩服了起来。

“哈哈,是呀,我要给广大的学弟学妹们一个完整的 Java 学习体系,记住我们的口号,学 Java 就上二哥的 Java 进阶之路。”我对未来充满了信心。

“那就开始吧。”三妹说。

01、定义抽象类

定义抽象类的时候需要用到关键字 abstract,放在 class 关键字前,就像下面这样。

abstract class AbstractPlayer {
}

沉默王二2021/6/5大约 8 分钟Java 核心面向对象编程