Java——一种彻底的面向对象语言

在 Java 世界里,Everything is object。也就意味着 Java 是一种彻底的面向对象语言,彻底对应着everything

使用 Java 无论想实现何种代码逻辑,首先需要定义类,而对象是类的实例化。没有类与对象,一切寸步难行。程序逻辑依赖对象的创建。类的抽象和定义是一切的起点,不仅如此,类包括成员变量和成员方法,类是对成员变量的封装,成员方法围绕成员变量展开,一个好的类设计与实现,意味着一半的工作已经完成了。

Java 语言与日常语言

所有的函数必须为类的成员函数。

考虑日常语言的基本句子结构——主谓宾;

  • 主语和宾语都可抽象出对应的类,
  • 谓语为主语的动作,抽象为主语对应类的某一成员函数,
  • 宾语是该成员函数的形式参数。

那么你该问了,遇到祈使句怎么办,当然这里的祈使句,表示没有主语,或无法抽象出主语(类)的情况?比如数据库的DDL操作,create table。

如果你想抽象一个主语——或者用户出来,那是十分拙劣的类设计,是为了面向对象而面向对象了,因为这个类,它太泛了。

C++ 给出的解决方案是,既然如此难以捉摸和构造,那干脆不构造了,就定义一个全局的函数好了。

一个对象调用其成员方法,是不能简单的和”主谓宾”的自然语言语法框架划等号的。
比如一个无参的成员函数(比如getter方法),是不是意味着没有宾语。(空参的成员函数,宾语很有可能是主语的私有成员变量)

Java,everything is object,怎么允许一个不属于类的函数,一个不是成员函数的函数。或者用户必须构造一个抽象的类,哪怕没有任何实际意义,或者在使用一个现成的 API 时(比如HBase API),API提供相关的类,比如操作HBase中的表,对于创建和删除表,用类HBaseAdmin来操作,对于上传、删除、查看表记录使用类 HTable。

你可能感兴趣的:(Java)