Java通过继承和方法重写来实现多态。具体来说,当一个子类继承自父类并重写了父类的方法时,可以通过父类的引用指向子类的对象,并调用重写的方法。这样,根据引用的类型,实际调用的方法会根据对象的实际类型动态确定,从而实现多态性。