面向对象技术有哪些核心特性