为什么覆盖NSDate的方法'-(NString *)description'无效?

时间:2019-05-15 11:57:48

标签: objective-c nsdate objective-c-category

我想使用NSLog一个NSDate对象,并以自定义的日期格式显示它,例如“ yyyy-MM-dd”。所以我在NSDate的Category文件中覆盖了实例的方法'-(NSString *)description',但是它不起作用。 谁能告诉我该如何实施?

在Objective-c中。


@interface NSDate(Test)
@end

@implemetion NSDate(Test)

- (NSString *)description
{
   return @"test";
}
@end


// in the code that will actually run.
{
  NSDate *date = [NSDate date];
  NSLog(@"%@", date);

}

// but it's not print "test" at last. why?


我希望它运行我在类别中覆盖的代码。

1 个答案:

答案 0 :(得分:0)

export class MoviesService { private _url: string = 'https://api.themoviedb.org/3/movie/popular?api_key=<<API KEY>>&language=en-US&page=2' constructor(private http: HttpClient) { } getmovies(): Observable<IMovie[]> { return this.http.get<IMovie[]>(this._url); } } 已经有一个名为NSDate

的字段

您不能通过类别/扩展名覆盖。请使用子类OR方法,或使用其他字段名以避免冲突。