public_method_defined?(name) -> bool[permalink][rdoc]インスタンスメソッド name がモジュールに定義されており、しかもその可視性が public であるときに true を返します。そうでなければ false を返します。
[SEE_ALSO] Module#method_defined?, Module#private_method_defined?, Module#protected_method_defined?
例
module A
  def method1()  end
end
class B
  protected
  def method2()  end
end
class C < B
  include A
  def method3()  end
end
A.method_defined? :method1                 #=> true
C.public_method_defined? "method1"         #=> true
C.public_method_defined? "method2"         #=> false
C.method_defined? "method2"                #=> true