含有 abstract 修饰符 class 即为抽象类,抽象类不能创建实际对象,含有抽象方法的抽象类必须定义为 abstract class。
接口可以说成是一种特殊的抽象类,接口中的所有方法都必须是抽象的,接口中的方法定义默认为 public abstract 类型,接口中的成员产量类型默认为 public static final。
两者的区别:
含有 abstract 修饰符 class 即为抽象类,抽象类不能创建实际对象,含有抽象方法的抽象类必须定义为 abstract class。
接口可以说成是一种特殊的抽象类,接口中的所有方法都必须是抽象的,接口中的方法定义默认为 public abstract 类型,接口中的成员产量类型默认为 public static final。
两者的区别:
Client does not support authentication protocol requested by server;
解决办法,登入MySQL的命令行界面,然后输入:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
其中password需要改成你自己的密码,大概原因是MySQL8.0的加密方式改变了,但是比较老版本的navicate没有来得及支持,因此需要将mysql设置为支持传统的那种密码加密,如果用比较低版本的MySQL,比如MySQL57应该就不会出现这种问题。
最后再输入下面一句进行刷新FLUSH PRIVILEGES;
问题解决
我们从上可以发现:上面这三种逻辑结构之间的节点与节点之间的关系是不一样的,对于线性结构来说,节点之间的关系是一对一的;树形结构的节点是一对多;图形结构的节点是多对多的关系。
线性结构:开始节点和终端节点都是唯一的,我们可以把第一个节点认为是开始节点,第四个节点认为是终端节点。除了开始节点和终端节点以外,其余节点都有且仅有一个前驱节点,有且仅有一个后继节点。对于第二个节点来说,它的前驱节点就是第一个节点,它的后继节点是第三个节点。
树形结构:开始节点唯一,终端节点不唯一,开始节点就是指的根节点,终端节点就是指的最下面的节点。除终端节点以外,每个节点有一个或多个后继节点,在根节点的左节点中有三个后继节点,右节点有两个后继节点,除开始节点外(根节点没有前驱节点),每个节点有且仅有一个前驱节点。
图形结构:没有开始节点和终端节点,所有节点都可能有多个前驱节点和多个后继节点,也就是说形成了一个多对多的图形结构,我们在图形结构中也看到了,节点之间是相互连接的。
Java语言是静态类型的(statical typed),也就是说所有变量和表达式的类型再编译时就已经完全确定。由于是statical typed,导致Java语言也是强类型(Strong typed)的。强类型意味着每个变量都具有一种类型,每个表达式具有一种类型,并且每种类型都是严格定义的,类型限制了变量可以hold哪些值,表达式最终产生什么值。同时限制了这些值可以进行的操作类型以及操作的具体方式。所有的赋值操作,无论是显式的还是在方法调用中通过参数传递,都要进行类型兼容性检查。
第一次运行Eclipse,经常会提示下面的问题:
… No java virtual machine was found after searching the follwing locations”…./javaw.exe” in your current path。